| File | Statements | Branches | Functions | Lines | |||||
|---|---|---|---|---|---|---|---|---|---|
| example.js | 100% | (83 / 83) | 100% | (73 / 73) | 100% | (12 / 12) | 100% | (83 / 83) | |
| lib.npmtest_googleapis.js | 100% | (16 / 16) | 100% | (14 / 14) | 100% | (3 / 3) | 100% | (16 / 16) | |
| test.js | 100% | (54 / 54) | 100% | (39 / 39) | 100% | (13 / 13) | 100% | (54 / 54) |
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 | 2 2 2 2 2 2 2 1 2 2 2 2 1 2 2 2 2 2 1 2 1 1 1 1 1 1 1 1 1 2 1 1 1 1 2 2 3 3 3 3 1 3 3 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 6 6 1 2 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 | /*
example.js
quickstart example
instruction
1. save this script as example.js
2. run the shell command:
$ npm install npmtest-googleapis && PORT=8081 node example.js
3. play with the browser-demo on http://127.0.0.1:8081
*/
/* istanbul instrument in package npmtest_googleapis */
/*jslint
bitwise: true,
browser: true,
maxerr: 8,
maxlen: 96,
node: true,
nomen: true,
regexp: true,
stupid: true
*/
(function () {
'use strict';
var local;
// run shared js-env code - init-before
(function () {
// init local
local = {};
// init modeJs
local.modeJs = (function () {
try {
return typeof navigator.userAgent === 'string' &&
typeof document.querySelector('body') === 'object' &&
typeof XMLHttpRequest.prototype.open === 'function' &&
'browser';
} catch (errorCaughtBrowser) {
return module.exports &&
typeof process.versions.node === 'string' &&
typeof require('http').createServer === 'function' &&
'node';
}
}());
// init global
local.global = local.modeJs === 'browser'
? window
: global;
// init utility2_rollup
local = local.global.utility2_rollup || (local.modeJs === 'browser'
? local.global.utility2_npmtest_googleapis
: global.utility2_moduleExports);
// export local
local.global.local = local;
}());
switch (local.modeJs) {
// init-after
// run browser js-env code - init-after
/* istanbul ignore next */
case 'browser':
local.testRunBrowser = function (event) {
Eif (!event || (event &&
event.currentTarget &&
event.currentTarget.className &&
event.currentTarget.className.includes &&
event.currentTarget.className.includes('onreset'))) {
// reset output
Array.from(
document.querySelectorAll('body > .resettable')
).forEach(function (element) {
switch (element.tagName) {
case 'INPUT':
case 'TEXTAREA':
element.value = '';
break;
default:
element.textContent = '';
}
});
}
switch (event && event.currentTarget && event.currentTarget.id) {
case 'testRunButton1':
// show tests
Eif (document.querySelector('#testReportDiv1').style.display === 'none') {
document.querySelector('#testReportDiv1').style.display = 'block';
document.querySelector('#testRunButton1').textContent =
'hide internal test';
local.modeTest = true;
local.testRunDefault(local);
// hide tests
} else {
document.querySelector('#testReportDiv1').style.display = 'none';
document.querySelector('#testRunButton1').textContent = 'run internal test';
}
break;
// custom-case
default:
break;
}
Iif (document.querySelector('#inputTextareaEval1') && (!event || (event &&
event.currentTarget &&
event.currentTarget.className &&
event.currentTarget.className.includes &&
event.currentTarget.className.includes('oneval')))) {
// try to eval input-code
try {
/*jslint evil: true*/
eval(document.querySelector('#inputTextareaEval1').value);
} catch (errorCaught) {
console.error(errorCaught);
}
}
};
// log stderr and stdout to #outputTextareaStdout1
['error', 'log'].forEach(function (key) {
console[key + '_original'] = console[key];
console[key] = function () {
var element;
console[key + '_original'].apply(console, arguments);
element = document.querySelector('#outputTextareaStdout1');
Iif (!element) {
return;
}
// append text to #outputTextareaStdout1
element.value += Array.from(arguments).map(function (arg) {
return typeof arg === 'string'
? arg
: JSON.stringify(arg, null, 4);
}).join(' ') + '\n';
// scroll textarea to bottom
element.scrollTop = element.scrollHeight;
};
});
// init event-handling
['change', 'click', 'keyup'].forEach(function (event) {
Array.from(document.querySelectorAll('.on' + event)).forEach(function (element) {
element.addEventListener(event, local.testRunBrowser);
});
});
// run tests
local.testRunBrowser();
break;
// run node js-env code - init-after
/* istanbul ignore next */
case 'node':
// export local
module.exports = local;
// require modules
local.fs = require('fs');
local.http = require('http');
local.url = require('url');
// init assets
local.assetsDict = local.assetsDict || {};
/* jslint-ignore-begin */
local.assetsDict['/assets.index.template.html'] = '\
<!doctype html>\n\
<html lang="en">\n\
<head>\n\
<meta charset="UTF-8">\n\
<meta name="viewport" content="width=device-width, initial-scale=1">\n\
<title>{{env.npm_package_name}} (v{{env.npm_package_version}})</title>\n\
<style>\n\
/*csslint\n\
box-sizing: false,\n\
universal-selector: false\n\
*/\n\
* {\n\
box-sizing: border-box;\n\
}\n\
body {\n\
background: #dde;\n\
font-family: Arial, Helvetica, sans-serif;\n\
margin: 2rem;\n\
}\n\
body > * {\n\
margin-bottom: 1rem;\n\
}\n\
.utility2FooterDiv {\n\
margin-top: 20px;\n\
text-align: center;\n\
}\n\
</style>\n\
<style>\n\
/*csslint\n\
*/\n\
textarea {\n\
font-family: monospace;\n\
height: 10rem;\n\
width: 100%;\n\
}\n\
textarea[readonly] {\n\
background: #ddd;\n\
}\n\
</style>\n\
</head>\n\
<body>\n\
<!-- utility2-comment\n\
<div id="ajaxProgressDiv1" style="background: #d00; height: 2px; left: 0; margin: 0; padding: 0; position: fixed; top: 0; transition: background 0.5s, width 1.5s; width: 25%;"></div>\n\
utility2-comment -->\n\
<h1>\n\
<!-- utility2-comment\n\
<a\n\
{{#if env.npm_package_homepage}}\n\
href="{{env.npm_package_homepage}}"\n\
{{/if env.npm_package_homepage}}\n\
target="_blank"\n\
>\n\
utility2-comment -->\n\
{{env.npm_package_name}} (v{{env.npm_package_version}})\n\
<!-- utility2-comment\n\
</a>\n\
utility2-comment -->\n\
</h1>\n\
<h3>{{env.npm_package_description}}</h3>\n\
<!-- utility2-comment\n\
<h4><a download href="assets.app.js">download standalone app</a></h4>\n\
<button class="onclick onreset" id="testRunButton1">run internal test</button><br>\n\
<div id="testReportDiv1" style="display: none;"></div>\n\
utility2-comment -->\n\
\n\
\n\
\n\
<label>stderr and stdout</label>\n\
<textarea class="resettable" id="outputTextareaStdout1" readonly></textarea>\n\
<!-- utility2-comment\n\
{{#if isRollup}}\n\
<script src="assets.app.js"></script>\n\
{{#unless isRollup}}\n\
utility2-comment -->\n\
<script src="assets.utility2.rollup.js"></script>\n\
<script src="jsonp.utility2._stateInit?callback=window.utility2._stateInit"></script>\n\
<script src="assets.npmtest_googleapis.rollup.js"></script>\n\
<script src="assets.example.js"></script>\n\
<script src="assets.test.js"></script>\n\
<!-- utility2-comment\n\
{{/if isRollup}}\n\
utility2-comment -->\n\
<div class="utility2FooterDiv">\n\
[ this app was created with\n\
<a href="https://github.com/kaizhu256/node-utility2" target="_blank">utility2</a>\n\
]\n\
</div>\n\
</body>\n\
</html>\n\
';
/* jslint-ignore-end */
Iif (local.templateRender) {
local.assetsDict['/'] = local.templateRender(
local.assetsDict['/assets.index.template.html'],
{
env: local.objectSetDefault(local.env, {
npm_package_description: 'the greatest app in the world!',
npm_package_name: 'my-app',
npm_package_nameAlias: 'my_app',
npm_package_version: '0.0.1'
})
}
);
} else {
local.assetsDict['/'] = local.assetsDict['/assets.index.template.html']
.replace((/\{\{env\.(\w+?)\}\}/g), function (match0, match1) {
// jslint-hack
String(match0);
switch (match1) {
case 'npm_package_description':
return 'the greatest app in the world!';
case 'npm_package_name':
return 'my-app';
case 'npm_package_nameAlias':
return 'my_app';
case 'npm_package_version':
return '0.0.1';
}
});
}
// run the cli
Eif (local.global.utility2_rollup || module !== require.main) {
break;
}
local.assetsDict['/assets.example.js'] =
local.assetsDict['/assets.example.js'] ||
local.fs.readFileSync(__filename, 'utf8');
// bug-workaround - long $npm_package_buildCustomOrg
/* jslint-ignore-begin */
local.assetsDict['/assets.npmtest_googleapis.rollup.js'] =
local.assetsDict['/assets.npmtest_googleapis.rollup.js'] ||
local.fs.readFileSync(
local.npmtest_googleapis.__dirname + '/lib.npmtest_googleapis.js',
'utf8'
).replace((/^#!/), '//');
/* jslint-ignore-end */
local.assetsDict['/favicon.ico'] = local.assetsDict['/favicon.ico'] || '';
// if $npm_config_timeout_exit exists,
// then exit this process after $npm_config_timeout_exit ms
if (Number(process.env.npm_config_timeout_exit)) {
setTimeout(process.exit, Number(process.env.npm_config_timeout_exit));
}
// start server
if (local.global.utility2_serverHttp1) {
break;
}
process.env.PORT = process.env.PORT || '8081';
console.error('server starting on port ' + process.env.PORT);
local.http.createServer(function (request, response) {
request.urlParsed = local.url.parse(request.url);
if (local.assetsDict[request.urlParsed.pathname] !== undefined) {
response.end(local.assetsDict[request.urlParsed.pathname]);
return;
}
response.statusCode = 404;
response.end();
}).listen(process.env.PORT);
break;
}
}());
|
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 | 2 2 2 2 2 2 2 1 2 2 2 2 1 1 1 1 | /* istanbul instrument in package npmtest_googleapis */
/*jslint
bitwise: true,
browser: true,
maxerr: 8,
maxlen: 96,
node: true,
nomen: true,
regexp: true,
stupid: true
*/
(function () {
'use strict';
var local;
// run shared js-env code - init-before
(function () {
// init local
local = {};
// init modeJs
local.modeJs = (function () {
try {
return typeof navigator.userAgent === 'string' &&
typeof document.querySelector('body') === 'object' &&
typeof XMLHttpRequest.prototype.open === 'function' &&
'browser';
} catch (errorCaughtBrowser) {
return module.exports &&
typeof process.versions.node === 'string' &&
typeof require('http').createServer === 'function' &&
'node';
}
}());
// init global
local.global = local.modeJs === 'browser'
? window
: global;
// init utility2_rollup
local = local.global.utility2_rollup || local;
// init lib
local.local = local.npmtest_googleapis = local;
// init exports
if (local.modeJs === 'browser') {
local.global.utility2_npmtest_googleapis = local;
} else {
module.exports = local;
module.exports.__dirname = __dirname;
module.exports.module = module;
}
}());
}());
|
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 | 2 2 2 2 2 2 2 1 2 2 1 1 1 1 2 2 2 2 1 1 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 1 2 2 1 2 2 1 2 2 1 1 1 1 1 | /* istanbul instrument in package npmtest_googleapis */
/*jslint
bitwise: true,
browser: true,
maxerr: 8,
maxlen: 96,
node: true,
nomen: true,
regexp: true,
stupid: true
*/
(function () {
'use strict';
var local;
// run shared js-env code - init-before
(function () {
// init local
local = {};
// init modeJs
local.modeJs = (function () {
try {
return typeof navigator.userAgent === 'string' &&
typeof document.querySelector('body') === 'object' &&
typeof XMLHttpRequest.prototype.open === 'function' &&
'browser';
} catch (errorCaughtBrowser) {
return module.exports &&
typeof process.versions.node === 'string' &&
typeof require('http').createServer === 'function' &&
'node';
}
}());
// init global
local.global = local.modeJs === 'browser'
? window
: global;
switch (local.modeJs) {
// re-init local from window.local
case 'browser':
local = local.global.utility2.objectSetDefault(
local.global.utility2_rollup || local.global.local,
local.global.utility2
);
break;
// re-init local from example.js
case 'node':
local = (local.global.utility2_rollup || require('utility2'))
.requireReadme();
break;
}
// export local
local.global.local = local;
}());
// run shared js-env code - function
(function () {
return;
}());
switch (local.modeJs) {
// run browser js-env code - function
case 'browser':
break;
// run node js-env code - function
case 'node':
break;
}
// run shared js-env code - init-after
(function () {
return;
}());
switch (local.modeJs) {
// run browser js-env code - init-after
case 'browser':
local.testCase_browser_nullCase = local.testCase_browser_nullCase || function (
options,
onError
) {
/*
* this function will test browsers's null-case handling-behavior-behavior
*/
onError(null, options);
};
// run tests
local.nop(local.modeTest &&
document.querySelector('#testRunButton1') &&
document.querySelector('#testRunButton1').click());
break;
// run node js-env code - init-after
/* istanbul ignore next */
case 'node':
local.testCase_buildApidoc_default = local.testCase_buildApidoc_default || function (
options,
onError
) {
/*
* this function will test buildApidoc's default handling-behavior-behavior
*/
options = { modulePathList: module.paths };
local.buildApidoc(options, onError);
};
local.testCase_buildApp_default = local.testCase_buildApp_default || function (
options,
onError
) {
/*
* this function will test buildApp's default handling-behavior-behavior
*/
local.testCase_buildReadme_default(options, local.onErrorThrow);
local.testCase_buildLib_default(options, local.onErrorThrow);
local.testCase_buildTest_default(options, local.onErrorThrow);
local.testCase_buildCustomOrg_default(options, local.onErrorThrow);
options = [];
local.buildApp(options, onError);
};
local.testCase_buildCustomOrg_default = local.testCase_buildCustomOrg_default ||
function (options, onError) {
/*
* this function will test buildCustomOrg's default handling-behavior
*/
options = {};
local.buildCustomOrg(options, onError);
};
local.testCase_buildLib_default = local.testCase_buildLib_default || function (
options,
onError
) {
/*
* this function will test buildLib's default handling-behavior
*/
options = {};
local.buildLib(options, onError);
};
local.testCase_buildReadme_default = local.testCase_buildReadme_default || function (
options,
onError
) {
/*
* this function will test buildReadme's default handling-behavior-behavior
*/
options = {};
local.buildReadme(options, onError);
};
local.testCase_buildTest_default = local.testCase_buildTest_default || function (
options,
onError
) {
/*
* this function will test buildTest's default handling-behavior
*/
options = {};
local.buildTest(options, onError);
};
local.testCase_webpage_default = local.testCase_webpage_default || function (
options,
onError
) {
/*
* this function will test webpage's default handling-behavior
*/
options = { modeCoverageMerge: true, url: local.serverLocalHost + '?modeTest=1' };
local.browserTest(options, onError);
};
// run test-server
local.testRunServer(local);
break;
}
}());
|
| File | Statements | Branches | Functions | Lines | |||||
|---|---|---|---|---|---|---|---|---|---|
| v1.js | 30.77% | (4 / 13) | 0% | (0 / 6) | 0% | (0 / 2) | 30.77% | (4 / 13) |
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* Accelerated Mobile Pages (AMP) URL API
*
* This API contains a single method, batchGet. Call this method to retrieve the AMP URL (and equivalent AMP Cache URL) for given public URL(s).
*
* @example
* var google = require('googleapis');
* var acceleratedmobilepageurl = google.acceleratedmobilepageurl('v1');
*
* @namespace acceleratedmobilepageurl
* @type {Function}
* @version v1
* @variation v1
* @param {object=} options Options for Acceleratedmobilepageurl
*/
function Acceleratedmobilepageurl(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.ampUrls = {
/**
* acceleratedmobilepageurl.ampUrls.batchGet
*
* @desc Returns AMP URL(s) and equivalent [AMP Cache URL(s)](/amp/cache/overview#amp-cache-url-format).
*
* @alias acceleratedmobilepageurl.ampUrls.batchGet
* @memberOf! acceleratedmobilepageurl(v1)
*
* @param {object} params Parameters for request
* @param {acceleratedmobilepageurl(v1).BatchGetAmpUrlsRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
batchGet: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://acceleratedmobilepageurl.googleapis.com/v1/ampUrls:batchGet',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
};
}
/**
* @typedef BatchGetAmpUrlsRequest
* @memberOf! acceleratedmobilepageurl(v1)
* @type object
* @property {string[]} urls List of URLs to look up for the paired AMP URLs.
The URLs are case-sensitive. Up to 50 URLs per lookup
(see [Usage Limits](/amp/cache/reference/limits)).
* @property {string} lookupStrategy The lookup_strategy being requested.
*/
/**
* @typedef BatchGetAmpUrlsResponse
* @memberOf! acceleratedmobilepageurl(v1)
* @type object
* @property {acceleratedmobilepageurl(v1).AmpUrl[]} ampUrls For each URL in BatchAmpUrlsRequest, the URL response. The response might
not be in the same order as URLs in the batch request.
If BatchAmpUrlsRequest contains duplicate URLs, AmpUrl is generated
only once.
* @property {acceleratedmobilepageurl(v1).AmpUrlError[]} urlErrors The errors for requested URLs that have no AMP URL.
*/
/**
* @typedef AmpUrl
* @memberOf! acceleratedmobilepageurl(v1)
* @type object
* @property {string} originalUrl The original non-AMP URL.
* @property {string} ampUrl The AMP URL pointing to the publisher's web server.
* @property {string} cdnAmpUrl The [AMP Cache URL](/amp/cache/overview#amp-cache-url-format) pointing to
the cached document in the Google AMP Cache.
*/
/**
* @typedef AmpUrlError
* @memberOf! acceleratedmobilepageurl(v1)
* @type object
* @property {string} errorMessage An optional descriptive error message.
* @property {string} errorCode The error code of an API call.
* @property {string} originalUrl The original non-AMP URL.
*/
module.exports = Acceleratedmobilepageurl;
|
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* Ad Exchange Buyer API
*
* Accesses your bidding-account information, submits creatives for validation, finds available direct deals, and retrieves performance reports.
*
* @example
* var google = require('googleapis');
* var adexchangebuyer = google.adexchangebuyer('v1.2');
*
* @namespace adexchangebuyer
* @type {Function}
* @version v1.2
* @variation v1.2
* @param {object=} options Options for Adexchangebuyer
*/
function Adexchangebuyer(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.accounts = {
/**
* adexchangebuyer.accounts.get
*
* @desc Gets one account by ID.
*
* @alias adexchangebuyer.accounts.get
* @memberOf! adexchangebuyer(v1.2)
*
* @param {object} params Parameters for request
* @param {integer} params.id The account id
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.2/accounts/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['id'],
pathParams: ['id'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.accounts.list
*
* @desc Retrieves the authenticated user's list of accounts.
*
* @alias adexchangebuyer.accounts.list
* @memberOf! adexchangebuyer(v1.2)
*
* @param {object=} params Parameters for request
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.2/accounts',
method: 'GET'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.accounts.patch
*
* @desc Updates an existing account. This method supports patch semantics.
*
* @alias adexchangebuyer.accounts.patch
* @memberOf! adexchangebuyer(v1.2)
*
* @param {object} params Parameters for request
* @param {integer} params.id The account id
* @param {adexchangebuyer(v1.2).Account} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.2/accounts/{id}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['id'],
pathParams: ['id'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.accounts.update
*
* @desc Updates an existing account.
*
* @alias adexchangebuyer.accounts.update
* @memberOf! adexchangebuyer(v1.2)
*
* @param {object} params Parameters for request
* @param {integer} params.id The account id
* @param {adexchangebuyer(v1.2).Account} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.2/accounts/{id}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['id'],
pathParams: ['id'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.creatives = {
/**
* adexchangebuyer.creatives.get
*
* @desc Gets the status for a single creative. A creative will be available 30-40 minutes after submission.
*
* @alias adexchangebuyer.creatives.get
* @memberOf! adexchangebuyer(v1.2)
*
* @param {object} params Parameters for request
* @param {integer} params.accountId The id for the account that will serve this creative.
* @param {string} params.buyerCreativeId The buyer-specific id for this creative.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.2/creatives/{accountId}/{buyerCreativeId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'buyerCreativeId'],
pathParams: ['accountId', 'buyerCreativeId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.creatives.insert
*
* @desc Submit a new creative.
*
* @alias adexchangebuyer.creatives.insert
* @memberOf! adexchangebuyer(v1.2)
*
* @param {object} params Parameters for request
* @param {adexchangebuyer(v1.2).Creative} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.2/creatives',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.creatives.list
*
* @desc Retrieves a list of the authenticated user's active creatives. A creative will be available 30-40 minutes after submission.
*
* @alias adexchangebuyer.creatives.list
* @memberOf! adexchangebuyer(v1.2)
*
* @param {object=} params Parameters for request
* @param {integer=} params.maxResults Maximum number of entries returned on one result page. If not set, the default is 100. Optional.
* @param {string=} params.pageToken A continuation token, used to page through ad clients. To retrieve the next page, set this parameter to the value of "nextPageToken" from the previous response. Optional.
* @param {string=} params.statusFilter When specified, only creatives having the given status are returned.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.2/creatives',
method: 'GET'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
};
}
/**
* @typedef Account
* @memberOf! adexchangebuyer(v1.2)
* @type object
* @property {object[]} bidderLocation Your bidder locations that have distinct URLs.
* @property {string} cookieMatchingNid The nid parameter value used in cookie match requests. Please contact your technical account manager if you need to change this.
* @property {string} cookieMatchingUrl The base URL used in cookie match requests.
* @property {integer} id Account id.
* @property {string} kind Resource type.
* @property {integer} maximumActiveCreatives The maximum number of active creatives that an account can have, where a creative is active if it was inserted or bid with in the last 30 days. Please contact your technical account manager if you need to change this.
* @property {integer} maximumTotalQps The sum of all bidderLocation.maximumQps values cannot exceed this. Please contact your technical account manager if you need to change this.
* @property {integer} numberActiveCreatives The number of creatives that this account inserted or bid with in the last 30 days.
*/
/**
* @typedef AccountsList
* @memberOf! adexchangebuyer(v1.2)
* @type object
* @property {adexchangebuyer(v1.2).Account[]} items A list of accounts.
* @property {string} kind Resource type.
*/
/**
* @typedef Creative
* @memberOf! adexchangebuyer(v1.2)
* @type object
* @property {string} HTMLSnippet The HTML snippet that displays the ad when inserted in the web page. If set, videoURL should not be set.
* @property {integer} accountId Account id.
* @property {string[]} advertiserId Detected advertiser id, if any. Read-only. This field should not be set in requests.
* @property {string} advertiserName The name of the company being advertised in the creative.
* @property {string} agencyId The agency id for this creative.
* @property {string} apiUploadTimestamp The last upload timestamp of this creative if it was uploaded via API. Read-only. The value of this field is generated, and will be ignored for uploads. (formatted RFC 3339 timestamp).
* @property {integer[]} attribute All attributes for the ads that may be shown from this snippet.
* @property {string} buyerCreativeId A buyer-specific id identifying the creative in this ad.
* @property {string[]} clickThroughUrl The set of destination urls for the snippet.
* @property {object[]} corrections Shows any corrections that were applied to this creative. Read-only. This field should not be set in requests.
* @property {object[]} disapprovalReasons The reasons for disapproval, if any. Note that not all disapproval reasons may be categorized, so it is possible for the creative to have a status of DISAPPROVED with an empty list for disapproval_reasons. In this case, please reach out to your TAM to help debug the issue. Read-only. This field should not be set in requests.
* @property {object} filteringReasons The filtering reasons for the creative. Read-only. This field should not be set in requests.
* @property {integer} height Ad height.
* @property {string[]} impressionTrackingUrl The set of urls to be called to record an impression.
* @property {string} kind Resource type.
* @property {integer[]} productCategories Detected product categories, if any. Read-only. This field should not be set in requests.
* @property {integer[]} restrictedCategories All restricted categories for the ads that may be shown from this snippet.
* @property {integer[]} sensitiveCategories Detected sensitive categories, if any. Read-only. This field should not be set in requests.
* @property {string} status Creative serving status. Read-only. This field should not be set in requests.
* @property {integer[]} vendorType All vendor types for the ads that may be shown from this snippet.
* @property {integer} version The version for this creative. Read-only. This field should not be set in requests.
* @property {string} videoURL The url to fetch a video ad. If set, HTMLSnippet should not be set.
* @property {integer} width Ad width.
*/
/**
* @typedef CreativesList
* @memberOf! adexchangebuyer(v1.2)
* @type object
* @property {adexchangebuyer(v1.2).Creative[]} items A list of creatives.
* @property {string} kind Resource type.
* @property {string} nextPageToken Continuation token used to page through creatives. To retrieve the next page of results, set the next request's "pageToken" value to this.
*/
module.exports = Adexchangebuyer;
|
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* Ad Exchange Buyer API
*
* Accesses your bidding-account information, submits creatives for validation, finds available direct deals, and retrieves performance reports.
*
* @example
* var google = require('googleapis');
* var adexchangebuyer = google.adexchangebuyer('v1.3');
*
* @namespace adexchangebuyer
* @type {Function}
* @version v1.3
* @variation v1.3
* @param {object=} options Options for Adexchangebuyer
*/
function Adexchangebuyer(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.accounts = {
/**
* adexchangebuyer.accounts.get
*
* @desc Gets one account by ID.
*
* @alias adexchangebuyer.accounts.get
* @memberOf! adexchangebuyer(v1.3)
*
* @param {object} params Parameters for request
* @param {integer} params.id The account id
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.3/accounts/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['id'],
pathParams: ['id'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.accounts.list
*
* @desc Retrieves the authenticated user's list of accounts.
*
* @alias adexchangebuyer.accounts.list
* @memberOf! adexchangebuyer(v1.3)
*
* @param {object=} params Parameters for request
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.3/accounts',
method: 'GET'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.accounts.patch
*
* @desc Updates an existing account. This method supports patch semantics.
*
* @alias adexchangebuyer.accounts.patch
* @memberOf! adexchangebuyer(v1.3)
*
* @param {object} params Parameters for request
* @param {integer} params.id The account id
* @param {adexchangebuyer(v1.3).Account} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.3/accounts/{id}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['id'],
pathParams: ['id'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.accounts.update
*
* @desc Updates an existing account.
*
* @alias adexchangebuyer.accounts.update
* @memberOf! adexchangebuyer(v1.3)
*
* @param {object} params Parameters for request
* @param {integer} params.id The account id
* @param {adexchangebuyer(v1.3).Account} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.3/accounts/{id}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['id'],
pathParams: ['id'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.billingInfo = {
/**
* adexchangebuyer.billingInfo.get
*
* @desc Returns the billing information for one account specified by account ID.
*
* @alias adexchangebuyer.billingInfo.get
* @memberOf! adexchangebuyer(v1.3)
*
* @param {object} params Parameters for request
* @param {integer} params.accountId The account id.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.3/billinginfo/{accountId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId'],
pathParams: ['accountId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.billingInfo.list
*
* @desc Retrieves a list of billing information for all accounts of the authenticated user.
*
* @alias adexchangebuyer.billingInfo.list
* @memberOf! adexchangebuyer(v1.3)
*
* @param {object=} params Parameters for request
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.3/billinginfo',
method: 'GET'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.budget = {
/**
* adexchangebuyer.budget.get
*
* @desc Returns the budget information for the adgroup specified by the accountId and billingId.
*
* @alias adexchangebuyer.budget.get
* @memberOf! adexchangebuyer(v1.3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId The account id to get the budget information for.
* @param {string} params.billingId The billing id to get the budget information for.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.3/billinginfo/{accountId}/{billingId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'billingId'],
pathParams: ['accountId', 'billingId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.budget.patch
*
* @desc Updates the budget amount for the budget of the adgroup specified by the accountId and billingId, with the budget amount in the request. This method supports patch semantics.
*
* @alias adexchangebuyer.budget.patch
* @memberOf! adexchangebuyer(v1.3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId The account id associated with the budget being updated.
* @param {string} params.billingId The billing id associated with the budget being updated.
* @param {adexchangebuyer(v1.3).Budget} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.3/billinginfo/{accountId}/{billingId}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['accountId', 'billingId'],
pathParams: ['accountId', 'billingId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.budget.update
*
* @desc Updates the budget amount for the budget of the adgroup specified by the accountId and billingId, with the budget amount in the request.
*
* @alias adexchangebuyer.budget.update
* @memberOf! adexchangebuyer(v1.3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId The account id associated with the budget being updated.
* @param {string} params.billingId The billing id associated with the budget being updated.
* @param {adexchangebuyer(v1.3).Budget} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.3/billinginfo/{accountId}/{billingId}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['accountId', 'billingId'],
pathParams: ['accountId', 'billingId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.creatives = {
/**
* adexchangebuyer.creatives.get
*
* @desc Gets the status for a single creative. A creative will be available 30-40 minutes after submission.
*
* @alias adexchangebuyer.creatives.get
* @memberOf! adexchangebuyer(v1.3)
*
* @param {object} params Parameters for request
* @param {integer} params.accountId The id for the account that will serve this creative.
* @param {string} params.buyerCreativeId The buyer-specific id for this creative.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.3/creatives/{accountId}/{buyerCreativeId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'buyerCreativeId'],
pathParams: ['accountId', 'buyerCreativeId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.creatives.insert
*
* @desc Submit a new creative.
*
* @alias adexchangebuyer.creatives.insert
* @memberOf! adexchangebuyer(v1.3)
*
* @param {object} params Parameters for request
* @param {adexchangebuyer(v1.3).Creative} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.3/creatives',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.creatives.list
*
* @desc Retrieves a list of the authenticated user's active creatives. A creative will be available 30-40 minutes after submission.
*
* @alias adexchangebuyer.creatives.list
* @memberOf! adexchangebuyer(v1.3)
*
* @param {object=} params Parameters for request
* @param {integer=} params.accountId When specified, only creatives for the given account ids are returned.
* @param {string=} params.buyerCreativeId When specified, only creatives for the given buyer creative ids are returned.
* @param {integer=} params.maxResults Maximum number of entries returned on one result page. If not set, the default is 100. Optional.
* @param {string=} params.pageToken A continuation token, used to page through ad clients. To retrieve the next page, set this parameter to the value of "nextPageToken" from the previous response. Optional.
* @param {string=} params.statusFilter When specified, only creatives having the given status are returned.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.3/creatives',
method: 'GET'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.directDeals = {
/**
* adexchangebuyer.directDeals.get
*
* @desc Gets one direct deal by ID.
*
* @alias adexchangebuyer.directDeals.get
* @memberOf! adexchangebuyer(v1.3)
*
* @param {object} params Parameters for request
* @param {string} params.id The direct deal id
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.3/directdeals/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['id'],
pathParams: ['id'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.directDeals.list
*
* @desc Retrieves the authenticated user's list of direct deals.
*
* @alias adexchangebuyer.directDeals.list
* @memberOf! adexchangebuyer(v1.3)
*
* @param {object=} params Parameters for request
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.3/directdeals',
method: 'GET'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.performanceReport = {
/**
* adexchangebuyer.performanceReport.list
*
* @desc Retrieves the authenticated user's list of performance metrics.
*
* @alias adexchangebuyer.performanceReport.list
* @memberOf! adexchangebuyer(v1.3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId The account id to get the reports.
* @param {string} params.endDateTime The end time of the report in ISO 8601 timestamp format using UTC.
* @param {integer=} params.maxResults Maximum number of entries returned on one result page. If not set, the default is 100. Optional.
* @param {string=} params.pageToken A continuation token, used to page through performance reports. To retrieve the next page, set this parameter to the value of "nextPageToken" from the previous response. Optional.
* @param {string} params.startDateTime The start time of the report in ISO 8601 timestamp format using UTC.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.3/performancereport',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'endDateTime', 'startDateTime'],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.pretargetingConfig = {
/**
* adexchangebuyer.pretargetingConfig.delete
*
* @desc Deletes an existing pretargeting config.
*
* @alias adexchangebuyer.pretargetingConfig.delete
* @memberOf! adexchangebuyer(v1.3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId The account id to delete the pretargeting config for.
* @param {string} params.configId The specific id of the configuration to delete.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.3/pretargetingconfigs/{accountId}/{configId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['accountId', 'configId'],
pathParams: ['accountId', 'configId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.pretargetingConfig.get
*
* @desc Gets a specific pretargeting configuration
*
* @alias adexchangebuyer.pretargetingConfig.get
* @memberOf! adexchangebuyer(v1.3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId The account id to get the pretargeting config for.
* @param {string} params.configId The specific id of the configuration to retrieve.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.3/pretargetingconfigs/{accountId}/{configId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'configId'],
pathParams: ['accountId', 'configId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.pretargetingConfig.insert
*
* @desc Inserts a new pretargeting configuration.
*
* @alias adexchangebuyer.pretargetingConfig.insert
* @memberOf! adexchangebuyer(v1.3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId The account id to insert the pretargeting config for.
* @param {adexchangebuyer(v1.3).PretargetingConfig} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.3/pretargetingconfigs/{accountId}',
method: 'POST'
}, options),
params: params,
requiredParams: ['accountId'],
pathParams: ['accountId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.pretargetingConfig.list
*
* @desc Retrieves a list of the authenticated user's pretargeting configurations.
*
* @alias adexchangebuyer.pretargetingConfig.list
* @memberOf! adexchangebuyer(v1.3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId The account id to get the pretargeting configs for.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.3/pretargetingconfigs/{accountId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId'],
pathParams: ['accountId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.pretargetingConfig.patch
*
* @desc Updates an existing pretargeting config. This method supports patch semantics.
*
* @alias adexchangebuyer.pretargetingConfig.patch
* @memberOf! adexchangebuyer(v1.3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId The account id to update the pretargeting config for.
* @param {string} params.configId The specific id of the configuration to update.
* @param {adexchangebuyer(v1.3).PretargetingConfig} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.3/pretargetingconfigs/{accountId}/{configId}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['accountId', 'configId'],
pathParams: ['accountId', 'configId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.pretargetingConfig.update
*
* @desc Updates an existing pretargeting config.
*
* @alias adexchangebuyer.pretargetingConfig.update
* @memberOf! adexchangebuyer(v1.3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId The account id to update the pretargeting config for.
* @param {string} params.configId The specific id of the configuration to update.
* @param {adexchangebuyer(v1.3).PretargetingConfig} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.3/pretargetingconfigs/{accountId}/{configId}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['accountId', 'configId'],
pathParams: ['accountId', 'configId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
}
/**
* @typedef Account
* @memberOf! adexchangebuyer(v1.3)
* @type object
* @property {object[]} bidderLocation Your bidder locations that have distinct URLs.
* @property {string} cookieMatchingNid The nid parameter value used in cookie match requests. Please contact your technical account manager if you need to change this.
* @property {string} cookieMatchingUrl The base URL used in cookie match requests.
* @property {integer} id Account id.
* @property {string} kind Resource type.
* @property {integer} maximumActiveCreatives The maximum number of active creatives that an account can have, where a creative is active if it was inserted or bid with in the last 30 days. Please contact your technical account manager if you need to change this.
* @property {integer} maximumTotalQps The sum of all bidderLocation.maximumQps values cannot exceed this. Please contact your technical account manager if you need to change this.
* @property {integer} numberActiveCreatives The number of creatives that this account inserted or bid with in the last 30 days.
*/
/**
* @typedef AccountsList
* @memberOf! adexchangebuyer(v1.3)
* @type object
* @property {adexchangebuyer(v1.3).Account[]} items A list of accounts.
* @property {string} kind Resource type.
*/
/**
* @typedef BillingInfo
* @memberOf! adexchangebuyer(v1.3)
* @type object
* @property {integer} accountId Account id.
* @property {string} accountName Account name.
* @property {string[]} billingId A list of adgroup IDs associated with this particular account. These IDs may show up as part of a realtime bidding BidRequest, which indicates a bid request for this account.
* @property {string} kind Resource type.
*/
/**
* @typedef BillingInfoList
* @memberOf! adexchangebuyer(v1.3)
* @type object
* @property {adexchangebuyer(v1.3).BillingInfo[]} items A list of billing info relevant for your account.
* @property {string} kind Resource type.
*/
/**
* @typedef Budget
* @memberOf! adexchangebuyer(v1.3)
* @type object
* @property {string} accountId The id of the account. This is required for get and update requests.
* @property {string} billingId The billing id to determine which adgroup to provide budget information for. This is required for get and update requests.
* @property {string} budgetAmount The daily budget amount in unit amount of the account currency to apply for the billingId provided. This is required for update requests.
* @property {string} currencyCode The currency code for the buyer. This cannot be altered here.
* @property {string} id The unique id that describes this item.
* @property {string} kind The kind of the resource, i.e. "adexchangebuyer#budget".
*/
/**
* @typedef Creative
* @memberOf! adexchangebuyer(v1.3)
* @type object
* @property {string} HTMLSnippet The HTML snippet that displays the ad when inserted in the web page. If set, videoURL should not be set.
* @property {integer} accountId Account id.
* @property {string[]} advertiserId Detected advertiser id, if any. Read-only. This field should not be set in requests.
* @property {string} advertiserName The name of the company being advertised in the creative.
* @property {string} agencyId The agency id for this creative.
* @property {string} apiUploadTimestamp The last upload timestamp of this creative if it was uploaded via API. Read-only. The value of this field is generated, and will be ignored for uploads. (formatted RFC 3339 timestamp).
* @property {integer[]} attribute All attributes for the ads that may be shown from this snippet.
* @property {string} buyerCreativeId A buyer-specific id identifying the creative in this ad.
* @property {string[]} clickThroughUrl The set of destination urls for the snippet.
* @property {object[]} corrections Shows any corrections that were applied to this creative. Read-only. This field should not be set in requests.
* @property {object[]} disapprovalReasons The reasons for disapproval, if any. Note that not all disapproval reasons may be categorized, so it is possible for the creative to have a status of DISAPPROVED with an empty list for disapproval_reasons. In this case, please reach out to your TAM to help debug the issue. Read-only. This field should not be set in requests.
* @property {object} filteringReasons The filtering reasons for the creative. Read-only. This field should not be set in requests.
* @property {integer} height Ad height.
* @property {string[]} impressionTrackingUrl The set of urls to be called to record an impression.
* @property {string} kind Resource type.
* @property {object} nativeAd If nativeAd is set, HTMLSnippet and videoURL should not be set.
* @property {integer[]} productCategories Detected product categories, if any. Read-only. This field should not be set in requests.
* @property {integer[]} restrictedCategories All restricted categories for the ads that may be shown from this snippet.
* @property {integer[]} sensitiveCategories Detected sensitive categories, if any. Read-only. This field should not be set in requests.
* @property {string} status Creative serving status. Read-only. This field should not be set in requests.
* @property {integer[]} vendorType All vendor types for the ads that may be shown from this snippet.
* @property {integer} version The version for this creative. Read-only. This field should not be set in requests.
* @property {string} videoURL The URL to fetch a video ad. If set, HTMLSnippet and the nativeAd should not be set.
* @property {integer} width Ad width.
*/
/**
* @typedef CreativesList
* @memberOf! adexchangebuyer(v1.3)
* @type object
* @property {adexchangebuyer(v1.3).Creative[]} items A list of creatives.
* @property {string} kind Resource type.
* @property {string} nextPageToken Continuation token used to page through creatives. To retrieve the next page of results, set the next request's "pageToken" value to this.
*/
/**
* @typedef DirectDeal
* @memberOf! adexchangebuyer(v1.3)
* @type object
* @property {integer} accountId The account id of the buyer this deal is for.
* @property {string} advertiser The name of the advertiser this deal is for.
* @property {boolean} allowsAlcohol Whether the publisher for this deal is eligible for alcohol ads.
* @property {string} buyerAccountId The account id that this deal was negotiated for. It is either the buyer or the client that this deal was negotiated on behalf of.
* @property {string} currencyCode The currency code that applies to the fixed_cpm value. If not set then assumed to be USD.
* @property {string} dealTier The deal type such as programmatic reservation or fixed price and so on.
* @property {string} endTime End time for when this deal stops being active. If not set then this deal is valid until manually disabled by the publisher. In seconds since the epoch.
* @property {string} fixedCpm The fixed price for this direct deal. In cpm micros of currency according to currency_code. If set, then this deal is eligible for the fixed price tier of buying (highest priority, pay exactly the configured fixed price).
* @property {string} id Deal id.
* @property {string} kind Resource type.
* @property {string} name Deal name.
* @property {string} privateExchangeMinCpm The minimum price for this direct deal. In cpm micros of currency according to currency_code. If set, then this deal is eligible for the private exchange tier of buying (below fixed price priority, run as a second price auction).
* @property {boolean} publisherBlocksOverriden If true, the publisher has opted to have their blocks ignored when a creative is bid with for this deal.
* @property {string} sellerNetwork The name of the publisher offering this direct deal.
* @property {string} startTime Start time for when this deal becomes active. If not set then this deal is active immediately upon creation. In seconds since the epoch.
*/
/**
* @typedef DirectDealsList
* @memberOf! adexchangebuyer(v1.3)
* @type object
* @property {adexchangebuyer(v1.3).DirectDeal[]} directDeals A list of direct deals relevant for your account.
* @property {string} kind Resource type.
*/
/**
* @typedef PerformanceReport
* @memberOf! adexchangebuyer(v1.3)
* @type object
* @property {number} bidRate The number of bid responses with an ad.
* @property {number} bidRequestRate The number of bid requests sent to your bidder.
* @property {any[]} calloutStatusRate Rate of various prefiltering statuses per match. Please refer to the callout-status-codes.txt file for different statuses.
* @property {any[]} cookieMatcherStatusRate Average QPS for cookie matcher operations.
* @property {any[]} creativeStatusRate Rate of ads with a given status. Please refer to the creative-status-codes.txt file for different statuses.
* @property {number} filteredBidRate The number of bid responses that were filtered due to a policy violation or other errors.
* @property {any[]} hostedMatchStatusRate Average QPS for hosted match operations.
* @property {number} inventoryMatchRate The number of potential queries based on your pretargeting settings.
* @property {string} kind Resource type.
* @property {number} latency50thPercentile The 50th percentile round trip latency(ms) as perceived from Google servers for the duration period covered by the report.
* @property {number} latency85thPercentile The 85th percentile round trip latency(ms) as perceived from Google servers for the duration period covered by the report.
* @property {number} latency95thPercentile The 95th percentile round trip latency(ms) as perceived from Google servers for the duration period covered by the report.
* @property {number} noQuotaInRegion Rate of various quota account statuses per quota check.
* @property {number} outOfQuota Rate of various quota account statuses per quota check.
* @property {number} pixelMatchRequests Average QPS for pixel match requests from clients.
* @property {number} pixelMatchResponses Average QPS for pixel match responses from clients.
* @property {number} quotaConfiguredLimit The configured quota limits for this account.
* @property {number} quotaThrottledLimit The throttled quota limits for this account.
* @property {string} region The trading location of this data.
* @property {number} successfulRequestRate The number of properly formed bid responses received by our servers within the deadline.
* @property {string} timestamp The unix timestamp of the starting time of this performance data.
* @property {number} unsuccessfulRequestRate The number of bid responses that were unsuccessful due to timeouts, incorrect formatting, etc.
*/
/**
* @typedef PerformanceReportList
* @memberOf! adexchangebuyer(v1.3)
* @type object
* @property {string} kind Resource type.
* @property {adexchangebuyer(v1.3).PerformanceReport[]} performanceReport A list of performance reports relevant for the account.
*/
/**
* @typedef PretargetingConfig
* @memberOf! adexchangebuyer(v1.3)
* @type object
* @property {string} billingId The id for billing purposes, provided for reference. Leave this field blank for insert requests; the id will be generated automatically.
* @property {string} configId The config id; generated automatically. Leave this field blank for insert requests.
* @property {string} configName The name of the config. Must be unique. Required for all requests.
* @property {string[]} creativeType List must contain exactly one of PRETARGETING_CREATIVE_TYPE_HTML or PRETARGETING_CREATIVE_TYPE_VIDEO.
* @property {object[]} dimensions Requests which allow one of these (width, height) pairs will match. All pairs must be supported ad dimensions.
* @property {string[]} excludedContentLabels Requests with any of these content labels will not match. Values are from content-labels.txt in the downloadable files section.
* @property {string[]} excludedGeoCriteriaIds Requests containing any of these geo criteria ids will not match.
* @property {object[]} excludedPlacements Requests containing any of these placements will not match.
* @property {string[]} excludedUserLists Requests containing any of these users list ids will not match.
* @property {string[]} excludedVerticals Requests containing any of these vertical ids will not match. Values are from the publisher-verticals.txt file in the downloadable files section.
* @property {string[]} geoCriteriaIds Requests containing any of these geo criteria ids will match.
* @property {boolean} isActive Whether this config is active. Required for all requests.
* @property {string} kind The kind of the resource, i.e. "adexchangebuyer#pretargetingConfig".
* @property {string[]} languages Request containing any of these language codes will match.
* @property {string[]} mobileCarriers Requests containing any of these mobile carrier ids will match. Values are from mobile-carriers.csv in the downloadable files section.
* @property {string[]} mobileDevices Requests containing any of these mobile device ids will match. Values are from mobile-devices.csv in the downloadable files section.
* @property {string[]} mobileOperatingSystemVersions Requests containing any of these mobile operating system version ids will match. Values are from mobile-os.csv in the downloadable files section.
* @property {object[]} placements Requests containing any of these placements will match.
* @property {string[]} platforms Requests matching any of these platforms will match. Possible values are PRETARGETING_PLATFORM_MOBILE, PRETARGETING_PLATFORM_DESKTOP, and PRETARGETING_PLATFORM_TABLET.
* @property {string[]} supportedCreativeAttributes Creative attributes should be declared here if all creatives corresponding to this pretargeting configuration have that creative attribute. Values are from pretargetable-creative-attributes.txt in the downloadable files section.
* @property {string[]} userLists Requests containing any of these user list ids will match.
* @property {string[]} vendorTypes Requests that allow any of these vendor ids will match. Values are from vendors.txt in the downloadable files section.
* @property {string[]} verticals Requests containing any of these vertical ids will match.
*/
/**
* @typedef PretargetingConfigList
* @memberOf! adexchangebuyer(v1.3)
* @type object
* @property {adexchangebuyer(v1.3).PretargetingConfig[]} items A list of pretargeting configs
* @property {string} kind Resource type.
*/
module.exports = Adexchangebuyer;
|
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 1791 1792 1793 1794 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822 1823 1824 1825 1826 1827 1828 1829 1830 1831 1832 1833 1834 1835 1836 1837 1838 1839 1840 1841 1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853 1854 1855 1856 1857 1858 1859 1860 1861 1862 1863 1864 1865 1866 1867 1868 1869 1870 1871 1872 1873 1874 1875 1876 1877 1878 1879 1880 1881 1882 1883 1884 1885 1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896 1897 1898 1899 1900 1901 1902 1903 1904 1905 1906 1907 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 1939 1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 2026 2027 2028 2029 2030 2031 2032 2033 2034 2035 2036 2037 2038 2039 2040 2041 2042 2043 2044 2045 2046 2047 2048 2049 2050 2051 2052 2053 2054 2055 2056 2057 2058 2059 2060 2061 2062 2063 2064 2065 2066 2067 2068 2069 2070 2071 2072 2073 2074 2075 2076 2077 2078 2079 2080 2081 2082 2083 2084 2085 2086 2087 2088 2089 2090 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* Ad Exchange Buyer API
*
* Accesses your bidding-account information, submits creatives for validation, finds available direct deals, and retrieves performance reports.
*
* @example
* var google = require('googleapis');
* var adexchangebuyer = google.adexchangebuyer('v1.4');
*
* @namespace adexchangebuyer
* @type {Function}
* @version v1.4
* @variation v1.4
* @param {object=} options Options for Adexchangebuyer
*/
function Adexchangebuyer(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.accounts = {
/**
* adexchangebuyer.accounts.get
*
* @desc Gets one account by ID.
*
* @alias adexchangebuyer.accounts.get
* @memberOf! adexchangebuyer(v1.4)
*
* @param {object} params Parameters for request
* @param {integer} params.id The account id
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.4/accounts/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['id'],
pathParams: ['id'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.accounts.list
*
* @desc Retrieves the authenticated user's list of accounts.
*
* @alias adexchangebuyer.accounts.list
* @memberOf! adexchangebuyer(v1.4)
*
* @param {object=} params Parameters for request
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.4/accounts',
method: 'GET'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.accounts.patch
*
* @desc Updates an existing account. This method supports patch semantics.
*
* @alias adexchangebuyer.accounts.patch
* @memberOf! adexchangebuyer(v1.4)
*
* @param {object} params Parameters for request
* @param {boolean=} params.confirmUnsafeAccountChange Confirmation for erasing bidder and cookie matching urls.
* @param {integer} params.id The account id
* @param {adexchangebuyer(v1.4).Account} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.4/accounts/{id}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['id'],
pathParams: ['id'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.accounts.update
*
* @desc Updates an existing account.
*
* @alias adexchangebuyer.accounts.update
* @memberOf! adexchangebuyer(v1.4)
*
* @param {object} params Parameters for request
* @param {boolean=} params.confirmUnsafeAccountChange Confirmation for erasing bidder and cookie matching urls.
* @param {integer} params.id The account id
* @param {adexchangebuyer(v1.4).Account} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.4/accounts/{id}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['id'],
pathParams: ['id'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.billingInfo = {
/**
* adexchangebuyer.billingInfo.get
*
* @desc Returns the billing information for one account specified by account ID.
*
* @alias adexchangebuyer.billingInfo.get
* @memberOf! adexchangebuyer(v1.4)
*
* @param {object} params Parameters for request
* @param {integer} params.accountId The account id.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.4/billinginfo/{accountId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId'],
pathParams: ['accountId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.billingInfo.list
*
* @desc Retrieves a list of billing information for all accounts of the authenticated user.
*
* @alias adexchangebuyer.billingInfo.list
* @memberOf! adexchangebuyer(v1.4)
*
* @param {object=} params Parameters for request
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.4/billinginfo',
method: 'GET'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.budget = {
/**
* adexchangebuyer.budget.get
*
* @desc Returns the budget information for the adgroup specified by the accountId and billingId.
*
* @alias adexchangebuyer.budget.get
* @memberOf! adexchangebuyer(v1.4)
*
* @param {object} params Parameters for request
* @param {string} params.accountId The account id to get the budget information for.
* @param {string} params.billingId The billing id to get the budget information for.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.4/billinginfo/{accountId}/{billingId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'billingId'],
pathParams: ['accountId', 'billingId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.budget.patch
*
* @desc Updates the budget amount for the budget of the adgroup specified by the accountId and billingId, with the budget amount in the request. This method supports patch semantics.
*
* @alias adexchangebuyer.budget.patch
* @memberOf! adexchangebuyer(v1.4)
*
* @param {object} params Parameters for request
* @param {string} params.accountId The account id associated with the budget being updated.
* @param {string} params.billingId The billing id associated with the budget being updated.
* @param {adexchangebuyer(v1.4).Budget} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.4/billinginfo/{accountId}/{billingId}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['accountId', 'billingId'],
pathParams: ['accountId', 'billingId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.budget.update
*
* @desc Updates the budget amount for the budget of the adgroup specified by the accountId and billingId, with the budget amount in the request.
*
* @alias adexchangebuyer.budget.update
* @memberOf! adexchangebuyer(v1.4)
*
* @param {object} params Parameters for request
* @param {string} params.accountId The account id associated with the budget being updated.
* @param {string} params.billingId The billing id associated with the budget being updated.
* @param {adexchangebuyer(v1.4).Budget} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.4/billinginfo/{accountId}/{billingId}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['accountId', 'billingId'],
pathParams: ['accountId', 'billingId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.creatives = {
/**
* adexchangebuyer.creatives.addDeal
*
* @desc Add a deal id association for the creative.
*
* @alias adexchangebuyer.creatives.addDeal
* @memberOf! adexchangebuyer(v1.4)
*
* @param {object} params Parameters for request
* @param {integer} params.accountId The id for the account that will serve this creative.
* @param {string} params.buyerCreativeId The buyer-specific id for this creative.
* @param {string} params.dealId The id of the deal id to associate with this creative.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
addDeal: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.4/creatives/{accountId}/{buyerCreativeId}/addDeal/{dealId}',
method: 'POST'
}, options),
params: params,
requiredParams: ['accountId', 'buyerCreativeId', 'dealId'],
pathParams: ['accountId', 'buyerCreativeId', 'dealId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.creatives.get
*
* @desc Gets the status for a single creative. A creative will be available 30-40 minutes after submission.
*
* @alias adexchangebuyer.creatives.get
* @memberOf! adexchangebuyer(v1.4)
*
* @param {object} params Parameters for request
* @param {integer} params.accountId The id for the account that will serve this creative.
* @param {string} params.buyerCreativeId The buyer-specific id for this creative.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.4/creatives/{accountId}/{buyerCreativeId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'buyerCreativeId'],
pathParams: ['accountId', 'buyerCreativeId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.creatives.insert
*
* @desc Submit a new creative.
*
* @alias adexchangebuyer.creatives.insert
* @memberOf! adexchangebuyer(v1.4)
*
* @param {object} params Parameters for request
* @param {adexchangebuyer(v1.4).Creative} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.4/creatives',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.creatives.list
*
* @desc Retrieves a list of the authenticated user's active creatives. A creative will be available 30-40 minutes after submission.
*
* @alias adexchangebuyer.creatives.list
* @memberOf! adexchangebuyer(v1.4)
*
* @param {object=} params Parameters for request
* @param {integer=} params.accountId When specified, only creatives for the given account ids are returned.
* @param {string=} params.buyerCreativeId When specified, only creatives for the given buyer creative ids are returned.
* @param {string=} params.dealsStatusFilter When specified, only creatives having the given deals status are returned.
* @param {integer=} params.maxResults Maximum number of entries returned on one result page. If not set, the default is 100. Optional.
* @param {string=} params.openAuctionStatusFilter When specified, only creatives having the given open auction status are returned.
* @param {string=} params.pageToken A continuation token, used to page through ad clients. To retrieve the next page, set this parameter to the value of "nextPageToken" from the previous response. Optional.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.4/creatives',
method: 'GET'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.creatives.listDeals
*
* @desc Lists the external deal ids associated with the creative.
*
* @alias adexchangebuyer.creatives.listDeals
* @memberOf! adexchangebuyer(v1.4)
*
* @param {object} params Parameters for request
* @param {integer} params.accountId The id for the account that will serve this creative.
* @param {string} params.buyerCreativeId The buyer-specific id for this creative.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
listDeals: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.4/creatives/{accountId}/{buyerCreativeId}/listDeals',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'buyerCreativeId'],
pathParams: ['accountId', 'buyerCreativeId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.creatives.removeDeal
*
* @desc Remove a deal id associated with the creative.
*
* @alias adexchangebuyer.creatives.removeDeal
* @memberOf! adexchangebuyer(v1.4)
*
* @param {object} params Parameters for request
* @param {integer} params.accountId The id for the account that will serve this creative.
* @param {string} params.buyerCreativeId The buyer-specific id for this creative.
* @param {string} params.dealId The id of the deal id to disassociate with this creative.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
removeDeal: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.4/creatives/{accountId}/{buyerCreativeId}/removeDeal/{dealId}',
method: 'POST'
}, options),
params: params,
requiredParams: ['accountId', 'buyerCreativeId', 'dealId'],
pathParams: ['accountId', 'buyerCreativeId', 'dealId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.marketplacedeals = {
/**
* adexchangebuyer.marketplacedeals.delete
*
* @desc Delete the specified deals from the proposal
*
* @alias adexchangebuyer.marketplacedeals.delete
* @memberOf! adexchangebuyer(v1.4)
*
* @param {object} params Parameters for request
* @param {string} params.proposalId The proposalId to delete deals from.
* @param {adexchangebuyer(v1.4).DeleteOrderDealsRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.4/proposals/{proposalId}/deals/delete',
method: 'POST'
}, options),
params: params,
requiredParams: ['proposalId'],
pathParams: ['proposalId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.marketplacedeals.insert
*
* @desc Add new deals for the specified proposal
*
* @alias adexchangebuyer.marketplacedeals.insert
* @memberOf! adexchangebuyer(v1.4)
*
* @param {object} params Parameters for request
* @param {string} params.proposalId proposalId for which deals need to be added.
* @param {adexchangebuyer(v1.4).AddOrderDealsRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.4/proposals/{proposalId}/deals/insert',
method: 'POST'
}, options),
params: params,
requiredParams: ['proposalId'],
pathParams: ['proposalId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.marketplacedeals.list
*
* @desc List all the deals for a given proposal
*
* @alias adexchangebuyer.marketplacedeals.list
* @memberOf! adexchangebuyer(v1.4)
*
* @param {object} params Parameters for request
* @param {string=} params.pqlQuery Query string to retrieve specific deals.
* @param {string} params.proposalId The proposalId to get deals for. To search across all proposals specify order_id = '-' as part of the URL.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.4/proposals/{proposalId}/deals',
method: 'GET'
}, options),
params: params,
requiredParams: ['proposalId'],
pathParams: ['proposalId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.marketplacedeals.update
*
* @desc Replaces all the deals in the proposal with the passed in deals
*
* @alias adexchangebuyer.marketplacedeals.update
* @memberOf! adexchangebuyer(v1.4)
*
* @param {object} params Parameters for request
* @param {string} params.proposalId The proposalId to edit deals on.
* @param {adexchangebuyer(v1.4).EditAllOrderDealsRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.4/proposals/{proposalId}/deals/update',
method: 'POST'
}, options),
params: params,
requiredParams: ['proposalId'],
pathParams: ['proposalId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.marketplacenotes = {
/**
* adexchangebuyer.marketplacenotes.insert
*
* @desc Add notes to the proposal
*
* @alias adexchangebuyer.marketplacenotes.insert
* @memberOf! adexchangebuyer(v1.4)
*
* @param {object} params Parameters for request
* @param {string} params.proposalId The proposalId to add notes for.
* @param {adexchangebuyer(v1.4).AddOrderNotesRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.4/proposals/{proposalId}/notes/insert',
method: 'POST'
}, options),
params: params,
requiredParams: ['proposalId'],
pathParams: ['proposalId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.marketplacenotes.list
*
* @desc Get all the notes associated with a proposal
*
* @alias adexchangebuyer.marketplacenotes.list
* @memberOf! adexchangebuyer(v1.4)
*
* @param {object} params Parameters for request
* @param {string=} params.pqlQuery Query string to retrieve specific notes. To search the text contents of notes, please use syntax like "WHERE note.note = "foo" or "WHERE note.note LIKE "%bar%"
* @param {string} params.proposalId The proposalId to get notes for. To search across all proposals specify order_id = '-' as part of the URL.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.4/proposals/{proposalId}/notes',
method: 'GET'
}, options),
params: params,
requiredParams: ['proposalId'],
pathParams: ['proposalId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.marketplaceprivateauction = {
/**
* adexchangebuyer.marketplaceprivateauction.updateproposal
*
* @desc Update a given private auction proposal
*
* @alias adexchangebuyer.marketplaceprivateauction.updateproposal
* @memberOf! adexchangebuyer(v1.4)
*
* @param {object} params Parameters for request
* @param {string} params.privateAuctionId The private auction id to be updated.
* @param {adexchangebuyer(v1.4).UpdatePrivateAuctionProposalRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
updateproposal: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.4/privateauction/{privateAuctionId}/updateproposal',
method: 'POST'
}, options),
params: params,
requiredParams: ['privateAuctionId'],
pathParams: ['privateAuctionId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.performanceReport = {
/**
* adexchangebuyer.performanceReport.list
*
* @desc Retrieves the authenticated user's list of performance metrics.
*
* @alias adexchangebuyer.performanceReport.list
* @memberOf! adexchangebuyer(v1.4)
*
* @param {object} params Parameters for request
* @param {string} params.accountId The account id to get the reports.
* @param {string} params.endDateTime The end time of the report in ISO 8601 timestamp format using UTC.
* @param {integer=} params.maxResults Maximum number of entries returned on one result page. If not set, the default is 100. Optional.
* @param {string=} params.pageToken A continuation token, used to page through performance reports. To retrieve the next page, set this parameter to the value of "nextPageToken" from the previous response. Optional.
* @param {string} params.startDateTime The start time of the report in ISO 8601 timestamp format using UTC.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.4/performancereport',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'endDateTime', 'startDateTime'],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.pretargetingConfig = {
/**
* adexchangebuyer.pretargetingConfig.delete
*
* @desc Deletes an existing pretargeting config.
*
* @alias adexchangebuyer.pretargetingConfig.delete
* @memberOf! adexchangebuyer(v1.4)
*
* @param {object} params Parameters for request
* @param {string} params.accountId The account id to delete the pretargeting config for.
* @param {string} params.configId The specific id of the configuration to delete.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.4/pretargetingconfigs/{accountId}/{configId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['accountId', 'configId'],
pathParams: ['accountId', 'configId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.pretargetingConfig.get
*
* @desc Gets a specific pretargeting configuration
*
* @alias adexchangebuyer.pretargetingConfig.get
* @memberOf! adexchangebuyer(v1.4)
*
* @param {object} params Parameters for request
* @param {string} params.accountId The account id to get the pretargeting config for.
* @param {string} params.configId The specific id of the configuration to retrieve.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.4/pretargetingconfigs/{accountId}/{configId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'configId'],
pathParams: ['accountId', 'configId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.pretargetingConfig.insert
*
* @desc Inserts a new pretargeting configuration.
*
* @alias adexchangebuyer.pretargetingConfig.insert
* @memberOf! adexchangebuyer(v1.4)
*
* @param {object} params Parameters for request
* @param {string} params.accountId The account id to insert the pretargeting config for.
* @param {adexchangebuyer(v1.4).PretargetingConfig} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.4/pretargetingconfigs/{accountId}',
method: 'POST'
}, options),
params: params,
requiredParams: ['accountId'],
pathParams: ['accountId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.pretargetingConfig.list
*
* @desc Retrieves a list of the authenticated user's pretargeting configurations.
*
* @alias adexchangebuyer.pretargetingConfig.list
* @memberOf! adexchangebuyer(v1.4)
*
* @param {object} params Parameters for request
* @param {string} params.accountId The account id to get the pretargeting configs for.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.4/pretargetingconfigs/{accountId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId'],
pathParams: ['accountId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.pretargetingConfig.patch
*
* @desc Updates an existing pretargeting config. This method supports patch semantics.
*
* @alias adexchangebuyer.pretargetingConfig.patch
* @memberOf! adexchangebuyer(v1.4)
*
* @param {object} params Parameters for request
* @param {string} params.accountId The account id to update the pretargeting config for.
* @param {string} params.configId The specific id of the configuration to update.
* @param {adexchangebuyer(v1.4).PretargetingConfig} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.4/pretargetingconfigs/{accountId}/{configId}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['accountId', 'configId'],
pathParams: ['accountId', 'configId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.pretargetingConfig.update
*
* @desc Updates an existing pretargeting config.
*
* @alias adexchangebuyer.pretargetingConfig.update
* @memberOf! adexchangebuyer(v1.4)
*
* @param {object} params Parameters for request
* @param {string} params.accountId The account id to update the pretargeting config for.
* @param {string} params.configId The specific id of the configuration to update.
* @param {adexchangebuyer(v1.4).PretargetingConfig} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.4/pretargetingconfigs/{accountId}/{configId}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['accountId', 'configId'],
pathParams: ['accountId', 'configId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.products = {
/**
* adexchangebuyer.products.get
*
* @desc Gets the requested product by id.
*
* @alias adexchangebuyer.products.get
* @memberOf! adexchangebuyer(v1.4)
*
* @param {object} params Parameters for request
* @param {string} params.productId The id for the product to get the head revision for.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.4/products/{productId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['productId'],
pathParams: ['productId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.products.search
*
* @desc Gets the requested product.
*
* @alias adexchangebuyer.products.search
* @memberOf! adexchangebuyer(v1.4)
*
* @param {object=} params Parameters for request
* @param {string=} params.pqlQuery The pql query used to query for products.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
search: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.4/products/search',
method: 'GET'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.proposals = {
/**
* adexchangebuyer.proposals.get
*
* @desc Get a proposal given its id
*
* @alias adexchangebuyer.proposals.get
* @memberOf! adexchangebuyer(v1.4)
*
* @param {object} params Parameters for request
* @param {string} params.proposalId Id of the proposal to retrieve.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.4/proposals/{proposalId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['proposalId'],
pathParams: ['proposalId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.proposals.insert
*
* @desc Create the given list of proposals
*
* @alias adexchangebuyer.proposals.insert
* @memberOf! adexchangebuyer(v1.4)
*
* @param {object} params Parameters for request
* @param {adexchangebuyer(v1.4).CreateOrdersRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.4/proposals/insert',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.proposals.patch
*
* @desc Update the given proposal. This method supports patch semantics.
*
* @alias adexchangebuyer.proposals.patch
* @memberOf! adexchangebuyer(v1.4)
*
* @param {object} params Parameters for request
* @param {string} params.proposalId The proposal id to update.
* @param {string} params.revisionNumber The last known revision number to update. If the head revision in the marketplace database has since changed, an error will be thrown. The caller should then fetch the latest proposal at head revision and retry the update at that revision.
* @param {string} params.updateAction The proposed action to take on the proposal. This field is required and it must be set when updating a proposal.
* @param {adexchangebuyer(v1.4).Proposal} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.4/proposals/{proposalId}/{revisionNumber}/{updateAction}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['proposalId', 'revisionNumber', 'updateAction'],
pathParams: ['proposalId', 'revisionNumber', 'updateAction'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.proposals.search
*
* @desc Search for proposals using pql query
*
* @alias adexchangebuyer.proposals.search
* @memberOf! adexchangebuyer(v1.4)
*
* @param {object=} params Parameters for request
* @param {string=} params.pqlQuery Query string to retrieve specific proposals.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
search: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.4/proposals/search',
method: 'GET'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.proposals.setupcomplete
*
* @desc Update the given proposal to indicate that setup has been completed.
*
* @alias adexchangebuyer.proposals.setupcomplete
* @memberOf! adexchangebuyer(v1.4)
*
* @param {object} params Parameters for request
* @param {string} params.proposalId The proposal id for which the setup is complete
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
setupcomplete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.4/proposals/{proposalId}/setupcomplete',
method: 'POST'
}, options),
params: params,
requiredParams: ['proposalId'],
pathParams: ['proposalId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer.proposals.update
*
* @desc Update the given proposal
*
* @alias adexchangebuyer.proposals.update
* @memberOf! adexchangebuyer(v1.4)
*
* @param {object} params Parameters for request
* @param {string} params.proposalId The proposal id to update.
* @param {string} params.revisionNumber The last known revision number to update. If the head revision in the marketplace database has since changed, an error will be thrown. The caller should then fetch the latest proposal at head revision and retry the update at that revision.
* @param {string} params.updateAction The proposed action to take on the proposal. This field is required and it must be set when updating a proposal.
* @param {adexchangebuyer(v1.4).Proposal} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.4/proposals/{proposalId}/{revisionNumber}/{updateAction}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['proposalId', 'revisionNumber', 'updateAction'],
pathParams: ['proposalId', 'revisionNumber', 'updateAction'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.pubprofiles = {
/**
* adexchangebuyer.pubprofiles.list
*
* @desc Gets the requested publisher profile(s) by publisher accountId.
*
* @alias adexchangebuyer.pubprofiles.list
* @memberOf! adexchangebuyer(v1.4)
*
* @param {object} params Parameters for request
* @param {integer} params.accountId The accountId of the publisher to get profiles for.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangebuyer/v1.4/publisher/{accountId}/profiles',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId'],
pathParams: ['accountId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
}
/**
* @typedef Account
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {object[]} bidderLocation Your bidder locations that have distinct URLs.
* @property {string} cookieMatchingNid The nid parameter value used in cookie match requests. Please contact your technical account manager if you need to change this.
* @property {string} cookieMatchingUrl The base URL used in cookie match requests.
* @property {integer} id Account id.
* @property {string} kind Resource type.
* @property {integer} maximumActiveCreatives The maximum number of active creatives that an account can have, where a creative is active if it was inserted or bid with in the last 30 days. Please contact your technical account manager if you need to change this.
* @property {integer} maximumTotalQps The sum of all bidderLocation.maximumQps values cannot exceed this. Please contact your technical account manager if you need to change this.
* @property {integer} numberActiveCreatives The number of creatives that this account inserted or bid with in the last 30 days.
*/
/**
* @typedef AccountsList
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {adexchangebuyer(v1.4).Account[]} items A list of accounts.
* @property {string} kind Resource type.
*/
/**
* @typedef AddOrderDealsRequest
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {adexchangebuyer(v1.4).MarketplaceDeal[]} deals The list of deals to add
* @property {string} proposalRevisionNumber The last known proposal revision number.
* @property {string} updateAction Indicates an optional action to take on the proposal
*/
/**
* @typedef AddOrderDealsResponse
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {adexchangebuyer(v1.4).MarketplaceDeal[]} deals List of deals added (in the same proposal as passed in the request)
* @property {string} proposalRevisionNumber The updated revision number for the proposal.
*/
/**
* @typedef AddOrderNotesRequest
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {adexchangebuyer(v1.4).MarketplaceNote[]} notes The list of notes to add.
*/
/**
* @typedef AddOrderNotesResponse
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {adexchangebuyer(v1.4).MarketplaceNote[]} notes
*/
/**
* @typedef BillingInfo
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {integer} accountId Account id.
* @property {string} accountName Account name.
* @property {string[]} billingId A list of adgroup IDs associated with this particular account. These IDs may show up as part of a realtime bidding BidRequest, which indicates a bid request for this account.
* @property {string} kind Resource type.
*/
/**
* @typedef BillingInfoList
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {adexchangebuyer(v1.4).BillingInfo[]} items A list of billing info relevant for your account.
* @property {string} kind Resource type.
*/
/**
* @typedef Budget
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {string} accountId The id of the account. This is required for get and update requests.
* @property {string} billingId The billing id to determine which adgroup to provide budget information for. This is required for get and update requests.
* @property {string} budgetAmount The daily budget amount in unit amount of the account currency to apply for the billingId provided. This is required for update requests.
* @property {string} currencyCode The currency code for the buyer. This cannot be altered here.
* @property {string} id The unique id that describes this item.
* @property {string} kind The kind of the resource, i.e. "adexchangebuyer#budget".
*/
/**
* @typedef Buyer
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {string} accountId Adx account id of the buyer.
*/
/**
* @typedef ContactInformation
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {string} email Email address of the contact.
* @property {string} name The name of the contact.
*/
/**
* @typedef CreateOrdersRequest
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {adexchangebuyer(v1.4).Proposal[]} proposals The list of proposals to create.
* @property {string} webPropertyCode Web property id of the seller creating these orders
*/
/**
* @typedef CreateOrdersResponse
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {adexchangebuyer(v1.4).Proposal[]} proposals The list of proposals successfully created.
*/
/**
* @typedef Creative
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {string} HTMLSnippet The HTML snippet that displays the ad when inserted in the web page. If set, videoURL should not be set.
* @property {integer} accountId Account id.
* @property {string} adChoicesDestinationUrl The link to the Ad Preferences page. This is only supported for native ads.
* @property {string[]} advertiserId Detected advertiser id, if any. Read-only. This field should not be set in requests.
* @property {string} advertiserName The name of the company being advertised in the creative. The value provided must exist in the advertisers.txt file.
* @property {string} agencyId The agency id for this creative.
* @property {string} apiUploadTimestamp The last upload timestamp of this creative if it was uploaded via API. Read-only. The value of this field is generated, and will be ignored for uploads. (formatted RFC 3339 timestamp).
* @property {integer[]} attribute List of buyer selectable attributes for the ads that may be shown from this snippet. Each attribute is represented by an integer as defined in buyer-declarable-creative-attributes.txt.
* @property {string} buyerCreativeId A buyer-specific id identifying the creative in this ad.
* @property {string[]} clickThroughUrl The set of destination urls for the snippet.
* @property {object[]} corrections Shows any corrections that were applied to this creative. Read-only. This field should not be set in requests.
* @property {string} dealsStatus Top-level deals status. Read-only. This field should not be set in requests. If disapproved, an entry for auctionType=DIRECT_DEALS (or ALL) in servingRestrictions will also exist. Note that this may be nuanced with other contextual restrictions, in which case it may be preferable to read from servingRestrictions directly.
* @property {string[]} detectedDomains Detected domains for this creative. Read-only. This field should not be set in requests.
* @property {object} filteringReasons The filtering reasons for the creative. Read-only. This field should not be set in requests.
* @property {integer} height Ad height.
* @property {string[]} impressionTrackingUrl The set of urls to be called to record an impression.
* @property {string} kind Resource type.
* @property {string[]} languages Detected languages for this creative. Read-only. This field should not be set in requests.
* @property {object} nativeAd If nativeAd is set, HTMLSnippet and the videoURL outside of nativeAd should not be set. (The videoURL inside nativeAd can be set.)
* @property {string} openAuctionStatus Top-level open auction status. Read-only. This field should not be set in requests. If disapproved, an entry for auctionType=OPEN_AUCTION (or ALL) in servingRestrictions will also exist. Note that this may be nuanced with other contextual restrictions, in which case it may be preferable to read from ServingRestrictions directly.
* @property {integer[]} productCategories Detected product categories, if any. Each category is represented by an integer as defined in ad-product-categories.txt. Read-only. This field should not be set in requests.
* @property {integer[]} restrictedCategories All restricted categories for the ads that may be shown from this snippet. Each category is represented by an integer as defined in the ad-restricted-categories.txt.
* @property {integer[]} sensitiveCategories Detected sensitive categories, if any. Each category is represented by an integer as defined in ad-sensitive-categories.txt. Read-only. This field should not be set in requests.
* @property {object[]} servingRestrictions The granular status of this ad in specific contexts. A context here relates to where something ultimately serves (for example, a physical location, a platform, an HTTPS vs HTTP request, or the type of auction). Read-only. This field should not be set in requests.
* @property {integer[]} vendorType List of vendor types for the ads that may be shown from this snippet. Each vendor type is represented by an integer as defined in vendors.txt.
* @property {integer} version The version for this creative. Read-only. This field should not be set in requests.
* @property {string} videoURL The URL to fetch a video ad. If set, HTMLSnippet and the nativeAd should not be set. Note, this is different from resource.native_ad.video_url above.
* @property {integer} width Ad width.
*/
/**
* @typedef CreativeDealIds
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {object[]} dealStatuses A list of external deal ids and ARC approval status.
* @property {string} kind Resource type.
*/
/**
* @typedef CreativesList
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {adexchangebuyer(v1.4).Creative[]} items A list of creatives.
* @property {string} kind Resource type.
* @property {string} nextPageToken Continuation token used to page through creatives. To retrieve the next page of results, set the next request's "pageToken" value to this.
*/
/**
* @typedef DealServingMetadata
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {boolean} alcoholAdsAllowed True if alcohol ads are allowed for this deal (read-only). This field is only populated when querying for finalized orders using the method GetFinalizedOrderDeals
* @property {adexchangebuyer(v1.4).DealServingMetadataDealPauseStatus} dealPauseStatus Tracks which parties (if any) have paused a deal. (readonly, except via PauseResumeOrderDeals action)
*/
/**
* @typedef DealServingMetadataDealPauseStatus
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {string} buyerPauseReason
* @property {string} firstPausedBy If the deal is paused, records which party paused the deal first.
* @property {boolean} hasBuyerPaused
* @property {boolean} hasSellerPaused
* @property {string} sellerPauseReason
*/
/**
* @typedef DealTerms
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {string} brandingType Visibilty of the URL in bid requests.
* @property {string} crossListedExternalDealIdType Indicates that this ExternalDealId exists under at least two different AdxInventoryDeals. Currently, the only case that the same ExternalDealId will exist is programmatic cross sell case.
* @property {string} description Description for the proposed terms of the deal.
* @property {adexchangebuyer(v1.4).Price} estimatedGrossSpend Non-binding estimate of the estimated gross spend for this deal Can be set by buyer or seller.
* @property {string} estimatedImpressionsPerDay Non-binding estimate of the impressions served per day Can be set by buyer or seller.
* @property {adexchangebuyer(v1.4).DealTermsGuaranteedFixedPriceTerms} guaranteedFixedPriceTerms The terms for guaranteed fixed price deals.
* @property {adexchangebuyer(v1.4).DealTermsNonGuaranteedAuctionTerms} nonGuaranteedAuctionTerms The terms for non-guaranteed auction deals.
* @property {adexchangebuyer(v1.4).DealTermsNonGuaranteedFixedPriceTerms} nonGuaranteedFixedPriceTerms The terms for non-guaranteed fixed price deals.
* @property {adexchangebuyer(v1.4).DealTermsRubiconNonGuaranteedTerms} rubiconNonGuaranteedTerms The terms for rubicon non-guaranteed deals.
* @property {string} sellerTimeZone For deals with Cost Per Day billing, defines the timezone used to mark the boundaries of a day (buyer-readonly)
*/
/**
* @typedef DealTermsGuaranteedFixedPriceTerms
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {adexchangebuyer(v1.4).DealTermsGuaranteedFixedPriceTermsBillingInfo} billingInfo External billing info for this Deal. This field is relevant when external billing info such as price has a different currency code than DFP/AdX.
* @property {adexchangebuyer(v1.4).PricePerBuyer[]} fixedPrices Fixed price for the specified buyer.
* @property {string} guaranteedImpressions Guaranteed impressions as a percentage. This is the percentage of guaranteed looks that the buyer is guaranteeing to buy.
* @property {string} guaranteedLooks Count of guaranteed looks. Required for deal, optional for product. For CPD deals, buyer changes to guaranteed_looks will be ignored.
* @property {string} minimumDailyLooks Count of minimum daily looks for a CPD deal. For CPD deals, buyer should negotiate on this field instead of guaranteed_looks.
*/
/**
* @typedef DealTermsGuaranteedFixedPriceTermsBillingInfo
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {string} currencyConversionTimeMs The timestamp (in ms since epoch) when the original reservation price for the deal was first converted to DFP currency. This is used to convert the contracted price into advertiser's currency without discrepancy.
* @property {string} dfpLineItemId The DFP line item id associated with this deal. For features like CPD, buyers can retrieve the DFP line item for billing reconciliation.
* @property {string} originalContractedQuantity The original contracted quantity (# impressions) for this deal. To ensure delivery, sometimes the publisher will book the deal with a impression buffer, such that guaranteed_looks is greater than the contracted quantity. However clients are billed using the original contracted quantity.
* @property {adexchangebuyer(v1.4).Price} price The original reservation price for the deal, if the currency code is different from the one used in negotiation.
*/
/**
* @typedef DealTermsNonGuaranteedAuctionTerms
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {boolean} autoOptimizePrivateAuction True if open auction buyers are allowed to compete with invited buyers in this private auction (buyer-readonly).
* @property {adexchangebuyer(v1.4).PricePerBuyer[]} reservePricePerBuyers Reserve price for the specified buyer.
*/
/**
* @typedef DealTermsNonGuaranteedFixedPriceTerms
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {adexchangebuyer(v1.4).PricePerBuyer[]} fixedPrices Fixed price for the specified buyer.
*/
/**
* @typedef DealTermsRubiconNonGuaranteedTerms
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {adexchangebuyer(v1.4).Price} priorityPrice Optional price for Rubicon priority access in the auction.
* @property {adexchangebuyer(v1.4).Price} standardPrice Optional price for Rubicon standard access in the auction.
*/
/**
* @typedef DeleteOrderDealsRequest
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {string[]} dealIds List of deals to delete for a given proposal
* @property {string} proposalRevisionNumber The last known proposal revision number.
* @property {string} updateAction Indicates an optional action to take on the proposal
*/
/**
* @typedef DeleteOrderDealsResponse
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {adexchangebuyer(v1.4).MarketplaceDeal[]} deals List of deals deleted (in the same proposal as passed in the request)
* @property {string} proposalRevisionNumber The updated revision number for the proposal.
*/
/**
* @typedef DeliveryControl
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {string} creativeBlockingLevel
* @property {string} deliveryRateType
* @property {adexchangebuyer(v1.4).DeliveryControlFrequencyCap[]} frequencyCaps
*/
/**
* @typedef DeliveryControlFrequencyCap
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {integer} maxImpressions
* @property {integer} numTimeUnits
* @property {string} timeUnitType
*/
/**
* @typedef Dimension
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {string} dimensionType
* @property {adexchangebuyer(v1.4).DimensionDimensionValue[]} dimensionValues
*/
/**
* @typedef DimensionDimensionValue
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {integer} id Id of the dimension.
* @property {string} name Name of the dimension mainly for debugging purposes, except for the case of CREATIVE_SIZE. For CREATIVE_SIZE, strings are used instead of ids.
* @property {integer} percentage Percent of total impressions for a dimension type. e.g. {dimension_type: 'GENDER', [{dimension_value: {id: 1, name: 'MALE', percentage: 60}}]} Gender MALE is 60% of all impressions which have gender.
*/
/**
* @typedef EditAllOrderDealsRequest
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {adexchangebuyer(v1.4).MarketplaceDeal[]} deals List of deals to edit. Service may perform 3 different operations based on comparison of deals in this list vs deals already persisted in database: 1. Add new deal to proposal If a deal in this list does not exist in the proposal, the service will create a new deal and add it to the proposal. Validation will follow AddOrderDealsRequest. 2. Update existing deal in the proposal If a deal in this list already exist in the proposal, the service will update that existing deal to this new deal in the request. Validation will follow UpdateOrderDealsRequest. 3. Delete deals from the proposal (just need the id) If a existing deal in the proposal is not present in this list, the service will delete that deal from the proposal. Validation will follow DeleteOrderDealsRequest.
* @property {adexchangebuyer(v1.4).Proposal} proposal If specified, also updates the proposal in the batch transaction. This is useful when the proposal and the deals need to be updated in one transaction.
* @property {string} proposalRevisionNumber The last known revision number for the proposal.
* @property {string} updateAction Indicates an optional action to take on the proposal
*/
/**
* @typedef EditAllOrderDealsResponse
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {adexchangebuyer(v1.4).MarketplaceDeal[]} deals List of all deals in the proposal after edit.
* @property {string} orderRevisionNumber The latest revision number after the update has been applied.
*/
/**
* @typedef GetOffersResponse
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {adexchangebuyer(v1.4).Product[]} products The returned list of products.
*/
/**
* @typedef GetOrderDealsResponse
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {adexchangebuyer(v1.4).MarketplaceDeal[]} deals List of deals for the proposal
*/
/**
* @typedef GetOrderNotesResponse
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {adexchangebuyer(v1.4).MarketplaceNote[]} notes The list of matching notes. The notes for a proposal are ordered from oldest to newest. If the notes span multiple proposals, they will be grouped by proposal, with the notes for the most recently modified proposal appearing first.
*/
/**
* @typedef GetOrdersResponse
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {adexchangebuyer(v1.4).Proposal[]} proposals The list of matching proposals.
*/
/**
* @typedef GetPublisherProfilesByAccountIdResponse
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {adexchangebuyer(v1.4).PublisherProfileApiProto[]} profiles Profiles for the requested publisher
*/
/**
* @typedef MarketplaceDeal
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {adexchangebuyer(v1.4).PrivateData} buyerPrivateData Buyer private data (hidden from seller).
* @property {string} creationTimeMs The time (ms since epoch) of the deal creation. (readonly)
* @property {string} creativePreApprovalPolicy Specifies the creative pre-approval policy (buyer-readonly)
* @property {string} creativeSafeFrameCompatibility Specifies whether the creative is safeFrame compatible (buyer-readonly)
* @property {string} dealId A unique deal-id for the deal (readonly).
* @property {adexchangebuyer(v1.4).DealServingMetadata} dealServingMetadata Metadata about the serving status of this deal (readonly, writes via custom actions)
* @property {adexchangebuyer(v1.4).DeliveryControl} deliveryControl The set of fields around delivery control that are interesting for a buyer to see but are non-negotiable. These are set by the publisher. This message is assigned an id of 100 since some day we would want to model this as a protobuf extension.
* @property {string} externalDealId The external deal id assigned to this deal once the deal is finalized. This is the deal-id that shows up in serving/reporting etc. (readonly)
* @property {string} flightEndTimeMs Proposed flight end time of the deal (ms since epoch) This will generally be stored in a granularity of a second. (updatable)
* @property {string} flightStartTimeMs Proposed flight start time of the deal (ms since epoch) This will generally be stored in a granularity of a second. (updatable)
* @property {string} inventoryDescription Description for the deal terms. (buyer-readonly)
* @property {boolean} isRfpTemplate Indicates whether the current deal is a RFP template. RFP template is created by buyer and not based on seller created products.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "adexchangebuyer#marketplaceDeal".
* @property {string} lastUpdateTimeMs The time (ms since epoch) when the deal was last updated. (readonly)
* @property {string} name The name of the deal. (updatable)
* @property {string} productId The product-id from which this deal was created. (readonly, except on create)
* @property {string} productRevisionNumber The revision number of the product that the deal was created from (readonly, except on create)
* @property {string} programmaticCreativeSource Specifies the creative source for programmatic deals, PUBLISHER means creative is provided by seller and ADVERTISR means creative is provided by buyer. (buyer-readonly)
* @property {string} proposalId
* @property {adexchangebuyer(v1.4).ContactInformation[]} sellerContacts Optional Seller contact information for the deal (buyer-readonly)
* @property {adexchangebuyer(v1.4).SharedTargeting[]} sharedTargetings The shared targeting visible to buyers and sellers. Each shared targeting entity is AND'd together. (updatable)
* @property {string} syndicationProduct The syndication product associated with the deal. (readonly, except on create)
* @property {adexchangebuyer(v1.4).DealTerms} terms The negotiable terms of the deal. (updatable)
* @property {string} webPropertyCode
*/
/**
* @typedef MarketplaceDealParty
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {adexchangebuyer(v1.4).Buyer} buyer The buyer/seller associated with the deal. One of buyer/seller is specified for a deal-party.
* @property {adexchangebuyer(v1.4).Seller} seller The buyer/seller associated with the deal. One of buyer/seller is specified for a deal party.
*/
/**
* @typedef MarketplaceLabel
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {string} accountId The accountId of the party that created the label.
* @property {string} createTimeMs The creation time (in ms since epoch) for the label.
* @property {adexchangebuyer(v1.4).MarketplaceDealParty} deprecatedMarketplaceDealParty Information about the party that created the label.
* @property {string} label The label to use.
*/
/**
* @typedef MarketplaceNote
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {string} creatorRole The role of the person (buyer/seller) creating the note. (readonly)
* @property {string} dealId Notes can optionally be associated with a deal. (readonly, except on create)
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "adexchangebuyer#marketplaceNote".
* @property {string} note The actual note to attach. (readonly, except on create)
* @property {string} noteId The unique id for the note. (readonly)
* @property {string} proposalId The proposalId that a note is attached to. (readonly)
* @property {string} proposalRevisionNumber If the note is associated with a proposal revision number, then store that here. (readonly, except on create)
* @property {string} timestampMs The timestamp (ms since epoch) that this note was created. (readonly)
*/
/**
* @typedef PerformanceReport
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {number} bidRate The number of bid responses with an ad.
* @property {number} bidRequestRate The number of bid requests sent to your bidder.
* @property {any[]} calloutStatusRate Rate of various prefiltering statuses per match. Please refer to the callout-status-codes.txt file for different statuses.
* @property {any[]} cookieMatcherStatusRate Average QPS for cookie matcher operations.
* @property {any[]} creativeStatusRate Rate of ads with a given status. Please refer to the creative-status-codes.txt file for different statuses.
* @property {number} filteredBidRate The number of bid responses that were filtered due to a policy violation or other errors.
* @property {any[]} hostedMatchStatusRate Average QPS for hosted match operations.
* @property {number} inventoryMatchRate The number of potential queries based on your pretargeting settings.
* @property {string} kind Resource type.
* @property {number} latency50thPercentile The 50th percentile round trip latency(ms) as perceived from Google servers for the duration period covered by the report.
* @property {number} latency85thPercentile The 85th percentile round trip latency(ms) as perceived from Google servers for the duration period covered by the report.
* @property {number} latency95thPercentile The 95th percentile round trip latency(ms) as perceived from Google servers for the duration period covered by the report.
* @property {number} noQuotaInRegion Rate of various quota account statuses per quota check.
* @property {number} outOfQuota Rate of various quota account statuses per quota check.
* @property {number} pixelMatchRequests Average QPS for pixel match requests from clients.
* @property {number} pixelMatchResponses Average QPS for pixel match responses from clients.
* @property {number} quotaConfiguredLimit The configured quota limits for this account.
* @property {number} quotaThrottledLimit The throttled quota limits for this account.
* @property {string} region The trading location of this data.
* @property {number} successfulRequestRate The number of properly formed bid responses received by our servers within the deadline.
* @property {string} timestamp The unix timestamp of the starting time of this performance data.
* @property {number} unsuccessfulRequestRate The number of bid responses that were unsuccessful due to timeouts, incorrect formatting, etc.
*/
/**
* @typedef PerformanceReportList
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {string} kind Resource type.
* @property {adexchangebuyer(v1.4).PerformanceReport[]} performanceReport A list of performance reports relevant for the account.
*/
/**
* @typedef PretargetingConfig
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {string} billingId The id for billing purposes, provided for reference. Leave this field blank for insert requests; the id will be generated automatically.
* @property {string} configId The config id; generated automatically. Leave this field blank for insert requests.
* @property {string} configName The name of the config. Must be unique. Required for all requests.
* @property {string[]} creativeType List must contain exactly one of PRETARGETING_CREATIVE_TYPE_HTML or PRETARGETING_CREATIVE_TYPE_VIDEO.
* @property {object[]} dimensions Requests which allow one of these (width, height) pairs will match. All pairs must be supported ad dimensions.
* @property {string[]} excludedContentLabels Requests with any of these content labels will not match. Values are from content-labels.txt in the downloadable files section.
* @property {string[]} excludedGeoCriteriaIds Requests containing any of these geo criteria ids will not match.
* @property {object[]} excludedPlacements Requests containing any of these placements will not match.
* @property {string[]} excludedUserLists Requests containing any of these users list ids will not match.
* @property {string[]} excludedVerticals Requests containing any of these vertical ids will not match. Values are from the publisher-verticals.txt file in the downloadable files section.
* @property {string[]} geoCriteriaIds Requests containing any of these geo criteria ids will match.
* @property {boolean} isActive Whether this config is active. Required for all requests.
* @property {string} kind The kind of the resource, i.e. "adexchangebuyer#pretargetingConfig".
* @property {string[]} languages Request containing any of these language codes will match.
* @property {integer} minimumViewabilityDecile Requests where the predicted viewability is below the specified decile will not match. E.g. if the buyer sets this value to 5, requests from slots where the predicted viewability is below 50% will not match. If the predicted viewability is unknown this field will be ignored.
* @property {string[]} mobileCarriers Requests containing any of these mobile carrier ids will match. Values are from mobile-carriers.csv in the downloadable files section.
* @property {string[]} mobileDevices Requests containing any of these mobile device ids will match. Values are from mobile-devices.csv in the downloadable files section.
* @property {string[]} mobileOperatingSystemVersions Requests containing any of these mobile operating system version ids will match. Values are from mobile-os.csv in the downloadable files section.
* @property {object[]} placements Requests containing any of these placements will match.
* @property {string[]} platforms Requests matching any of these platforms will match. Possible values are PRETARGETING_PLATFORM_MOBILE, PRETARGETING_PLATFORM_DESKTOP, and PRETARGETING_PLATFORM_TABLET.
* @property {string[]} supportedCreativeAttributes Creative attributes should be declared here if all creatives corresponding to this pretargeting configuration have that creative attribute. Values are from pretargetable-creative-attributes.txt in the downloadable files section.
* @property {string[]} userIdentifierDataRequired Requests containing the specified type of user data will match. Possible values are HOSTED_MATCH_DATA, which means the request is cookie-targetable and has a match in the buyer's hosted match table, and COOKIE_OR_IDFA, which means the request has either a targetable cookie or an iOS IDFA.
* @property {string[]} userLists Requests containing any of these user list ids will match.
* @property {string[]} vendorTypes Requests that allow any of these vendor ids will match. Values are from vendors.txt in the downloadable files section.
* @property {string[]} verticals Requests containing any of these vertical ids will match.
* @property {object[]} videoPlayerSizes Video requests satisfying any of these player size constraints will match.
*/
/**
* @typedef PretargetingConfigList
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {adexchangebuyer(v1.4).PretargetingConfig[]} items A list of pretargeting configs
* @property {string} kind Resource type.
*/
/**
* @typedef Price
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {number} amountMicros The price value in micros.
* @property {string} currencyCode The currency code for the price.
* @property {number} expectedCpmMicros In case of CPD deals, the expected CPM in micros.
* @property {string} pricingType The pricing type for the deal/product.
*/
/**
* @typedef PricePerBuyer
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {string} auctionTier Optional access type for this buyer.
* @property {adexchangebuyer(v1.4).Buyer} buyer The buyer who will pay this price. If unset, all buyers can pay this price (if the advertisers match, and there's no more specific rule matching the buyer).
* @property {adexchangebuyer(v1.4).Price} price The specified price
*/
/**
* @typedef PrivateData
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {string} referenceId
* @property {string} referencePayload
*/
/**
* @typedef Product
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {string} creationTimeMs Creation time in ms. since epoch (readonly)
* @property {adexchangebuyer(v1.4).ContactInformation[]} creatorContacts Optional contact information for the creator of this product. (buyer-readonly)
* @property {adexchangebuyer(v1.4).DeliveryControl} deliveryControl The set of fields around delivery control that are interesting for a buyer to see but are non-negotiable. These are set by the publisher. This message is assigned an id of 100 since some day we would want to model this as a protobuf extension.
* @property {string} flightEndTimeMs The proposed end time for the deal (ms since epoch) (buyer-readonly)
* @property {string} flightStartTimeMs Inventory availability dates. (times are in ms since epoch) The granularity is generally in the order of seconds. (buyer-readonly)
* @property {boolean} hasCreatorSignedOff If the creator has already signed off on the product, then the buyer can finalize the deal by accepting the product as is. When copying to a proposal, if any of the terms are changed, then auto_finalize is automatically set to false.
* @property {string} inventorySource What exchange will provide this inventory (readonly, except on create).
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "adexchangebuyer#product".
* @property {adexchangebuyer(v1.4).MarketplaceLabel[]} labels Optional List of labels for the product (optional, buyer-readonly).
* @property {string} lastUpdateTimeMs Time of last update in ms. since epoch (readonly)
* @property {string} legacyOfferId Optional legacy offer id if this offer is a preferred deal offer.
* @property {string} marketplacePublisherProfileId Marketplace publisher profile Id. This Id differs from the regular publisher_profile_id in that 1. This is a new id, the old Id will be deprecated in 2017. 2. This id uniquely identifies a publisher profile by itself.
* @property {string} name The name for this product as set by the seller. (buyer-readonly)
* @property {string} privateAuctionId Optional private auction id if this offer is a private auction offer.
* @property {string} productId The unique id for the product (readonly)
* @property {string} publisherProfileId Id of the publisher profile for a given seller. A (seller.account_id, publisher_profile_id) pair uniquely identifies a publisher profile. Buyers can call the PublisherProfiles::List endpoint to get a list of publisher profiles for a given seller.
* @property {adexchangebuyer(v1.4).PublisherProvidedForecast} publisherProvidedForecast Publisher self-provided forecast information.
* @property {string} revisionNumber The revision number of the product. (readonly)
* @property {adexchangebuyer(v1.4).Seller} seller Information about the seller that created this product (readonly, except on create)
* @property {adexchangebuyer(v1.4).SharedTargeting[]} sharedTargetings Targeting that is shared between the buyer and the seller. Each targeting criteria has a specified key and for each key there is a list of inclusion value or exclusion values. (buyer-readonly)
* @property {string} state The state of the product. (buyer-readonly)
* @property {string} syndicationProduct The syndication product associated with the deal. (readonly, except on create)
* @property {adexchangebuyer(v1.4).DealTerms} terms The negotiable terms of the deal (buyer-readonly)
* @property {string} webPropertyCode The web property code for the seller. This field is meant to be copied over as is when creating deals.
*/
/**
* @typedef Proposal
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {adexchangebuyer(v1.4).Buyer} billedBuyer Reference to the buyer that will get billed for this proposal. (readonly)
* @property {adexchangebuyer(v1.4).Buyer} buyer Reference to the buyer on the proposal. (readonly, except on create)
* @property {adexchangebuyer(v1.4).ContactInformation[]} buyerContacts Optional contact information of the buyer. (seller-readonly)
* @property {adexchangebuyer(v1.4).PrivateData} buyerPrivateData Private data for buyer. (hidden from seller).
* @property {string[]} dbmAdvertiserIds IDs of DBM advertisers permission to this proposal.
* @property {boolean} hasBuyerSignedOff When an proposal is in an accepted state, indicates whether the buyer has signed off. Once both sides have signed off on a deal, the proposal can be finalized by the seller. (seller-readonly)
* @property {boolean} hasSellerSignedOff When an proposal is in an accepted state, indicates whether the buyer has signed off Once both sides have signed off on a deal, the proposal can be finalized by the seller. (buyer-readonly)
* @property {string} inventorySource What exchange will provide this inventory (readonly, except on create).
* @property {boolean} isRenegotiating True if the proposal is being renegotiated (readonly).
* @property {boolean} isSetupComplete True, if the buyside inventory setup is complete for this proposal. (readonly, except via OrderSetupCompleted action)
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "adexchangebuyer#proposal".
* @property {adexchangebuyer(v1.4).MarketplaceLabel[]} labels List of labels associated with the proposal. (readonly)
* @property {string} lastUpdaterOrCommentorRole The role of the last user that either updated the proposal or left a comment. (readonly)
* @property {string} name The name for the proposal (updatable)
* @property {string} negotiationId Optional negotiation id if this proposal is a preferred deal proposal.
* @property {string} originatorRole Indicates whether the buyer/seller created the proposal.(readonly)
* @property {string} privateAuctionId Optional private auction id if this proposal is a private auction proposal.
* @property {string} proposalId The unique id of the proposal. (readonly).
* @property {string} proposalState The current state of the proposal. (readonly)
* @property {string} revisionNumber The revision number for the proposal (readonly).
* @property {string} revisionTimeMs The time (ms since epoch) when the proposal was last revised (readonly).
* @property {adexchangebuyer(v1.4).Seller} seller Reference to the seller on the proposal. (readonly, except on create)
* @property {adexchangebuyer(v1.4).ContactInformation[]} sellerContacts Optional contact information of the seller (buyer-readonly).
*/
/**
* @typedef PublisherProfileApiProto
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {string} accountId The account id of the seller.
* @property {string} audience Publisher provided info on its audience.
* @property {string} buyerPitchStatement A pitch statement for the buyer
* @property {string} directContact Direct contact for the publisher profile.
* @property {string} exchange Exchange where this publisher profile is from. E.g. AdX, Rubicon etc...
* @property {string} googlePlusLink Link to publisher's Google+ page.
* @property {boolean} isParent True, if this is the parent profile, which represents all domains owned by the publisher.
* @property {boolean} isPublished True, if this profile is published. Deprecated for state.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "adexchangebuyer#publisherProfileApiProto".
* @property {string} logoUrl The url to the logo for the publisher.
* @property {string} mediaKitLink The url for additional marketing and sales materials.
* @property {string} name
* @property {string} overview Publisher provided overview.
* @property {integer} profileId The pair of (seller.account_id, profile_id) uniquely identifies a publisher profile for a given publisher.
* @property {string} programmaticContact Programmatic contact for the publisher profile.
* @property {string[]} publisherDomains The list of domains represented in this publisher profile. Empty if this is a parent profile.
* @property {string} publisherProfileId Unique Id for publisher profile.
* @property {adexchangebuyer(v1.4).PublisherProvidedForecast} publisherProvidedForecast Publisher provided forecasting information.
* @property {string} rateCardInfoLink Link to publisher rate card
* @property {string} samplePageLink Link for a sample content page.
* @property {adexchangebuyer(v1.4).Seller} seller Seller of the publisher profile.
* @property {string} state State of the publisher profile.
* @property {string[]} topHeadlines Publisher provided key metrics and rankings.
*/
/**
* @typedef PublisherProvidedForecast
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {adexchangebuyer(v1.4).Dimension[]} dimensions Publisher provided dimensions. E.g. geo, sizes etc...
* @property {string} weeklyImpressions Publisher provided weekly impressions.
* @property {string} weeklyUniques Publisher provided weekly uniques.
*/
/**
* @typedef Seller
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {string} accountId The unique id for the seller. The seller fills in this field. The seller account id is then available to buyer in the product.
* @property {string} subAccountId Optional sub-account id for the seller.
*/
/**
* @typedef SharedTargeting
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {adexchangebuyer(v1.4).TargetingValue[]} exclusions The list of values to exclude from targeting. Each value is AND'd together.
* @property {adexchangebuyer(v1.4).TargetingValue[]} inclusions The list of value to include as part of the targeting. Each value is OR'd together.
* @property {string} key The key representing the shared targeting criterion.
*/
/**
* @typedef TargetingValue
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {adexchangebuyer(v1.4).TargetingValueCreativeSize} creativeSizeValue The creative size value to exclude/include.
* @property {adexchangebuyer(v1.4).TargetingValueDayPartTargeting} dayPartTargetingValue The daypart targeting to include / exclude. Filled in when the key is GOOG_DAYPART_TARGETING.
* @property {string} longValue The long value to exclude/include.
* @property {string} stringValue The string value to exclude/include.
*/
/**
* @typedef TargetingValueCreativeSize
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {adexchangebuyer(v1.4).TargetingValueSize[]} companionSizes For video size type, the list of companion sizes.
* @property {string} creativeSizeType The Creative size type.
* @property {adexchangebuyer(v1.4).TargetingValueSize} size For regular or video creative size type, specifies the size of the creative.
* @property {string} skippableAdType The skippable ad type for video size.
*/
/**
* @typedef TargetingValueDayPartTargeting
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {adexchangebuyer(v1.4).TargetingValueDayPartTargetingDayPart[]} dayParts
* @property {string} timeZoneType
*/
/**
* @typedef TargetingValueDayPartTargetingDayPart
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {string} dayOfWeek
* @property {integer} endHour
* @property {integer} endMinute
* @property {integer} startHour
* @property {integer} startMinute
*/
/**
* @typedef TargetingValueSize
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {integer} height The height of the creative.
* @property {integer} width The width of the creative.
*/
/**
* @typedef UpdatePrivateAuctionProposalRequest
* @memberOf! adexchangebuyer(v1.4)
* @type object
* @property {string} externalDealId The externalDealId of the deal to be updated.
* @property {adexchangebuyer(v1.4).MarketplaceNote} note Optional note to be added.
* @property {string} proposalRevisionNumber The current revision number of the proposal to be updated.
* @property {string} updateAction The proposed action on the private auction proposal.
*/
module.exports = Adexchangebuyer;
|
| File | Statements | Branches | Functions | Lines | |||||
|---|---|---|---|---|---|---|---|---|---|
| v2beta1.js | 3.31% | (4 / 121) | 0% | (0 / 78) | 0% | (0 / 20) | 3.31% | (4 / 121) |
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* Ad Exchange Buyer API II
*
* Accesses the latest features for managing Ad Exchange accounts, Real-Time Bidding configurations and auction metrics, and Marketplace programmatic deals.
*
* @example
* var google = require('googleapis');
* var adexchangebuyer2 = google.adexchangebuyer2('v2beta1');
*
* @namespace adexchangebuyer2
* @type {Function}
* @version v2beta1
* @variation v2beta1
* @param {object=} options Options for Adexchangebuyer2
*/
function Adexchangebuyer2(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.accounts = {
clients: {
/**
* adexchangebuyer2.accounts.clients.update
*
* @desc Updates an existing client buyer.
*
* @alias adexchangebuyer2.accounts.clients.update
* @memberOf! adexchangebuyer2(v2beta1)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Unique numerical account ID for the buyer of which the client buyer is a customer; the sponsor buyer to update a client for. (required)
* @param {string} params.clientAccountId Unique numerical account ID of the client to update. (required)
* @param {adexchangebuyer2(v2beta1).Client} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://adexchangebuyer.googleapis.com/v2beta1/accounts/{accountId}/clients/{clientAccountId}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['accountId', 'clientAccountId'],
pathParams: ['accountId', 'clientAccountId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer2.accounts.clients.create
*
* @desc Creates a new client buyer.
*
* @alias adexchangebuyer2.accounts.clients.create
* @memberOf! adexchangebuyer2(v2beta1)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Unique numerical account ID for the buyer of which the client buyer is a customer; the sponsor buyer to create a client for. (required)
* @param {adexchangebuyer2(v2beta1).Client} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
create: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://adexchangebuyer.googleapis.com/v2beta1/accounts/{accountId}/clients',
method: 'POST'
}, options),
params: params,
requiredParams: ['accountId'],
pathParams: ['accountId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer2.accounts.clients.get
*
* @desc Gets a client buyer with a given client account ID.
*
* @alias adexchangebuyer2.accounts.clients.get
* @memberOf! adexchangebuyer2(v2beta1)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Numerical account ID of the client's sponsor buyer. (required)
* @param {string} params.clientAccountId Numerical account ID of the client buyer to retrieve. (required)
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://adexchangebuyer.googleapis.com/v2beta1/accounts/{accountId}/clients/{clientAccountId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'clientAccountId'],
pathParams: ['accountId', 'clientAccountId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer2.accounts.clients.list
*
* @desc Lists all the clients for the current sponsor buyer.
*
* @alias adexchangebuyer2.accounts.clients.list
* @memberOf! adexchangebuyer2(v2beta1)
*
* @param {object} params Parameters for request
* @param {string=} params.pageToken A token identifying a page of results the server should return. Typically, this is the value of ListClientsResponse.nextPageToken returned from the previous call to the accounts.clients.list method.
* @param {string} params.accountId Unique numerical account ID of the sponsor buyer to list the clients for.
* @param {integer=} params.pageSize Requested page size. The server may return fewer clients than requested. If unspecified, the server will pick an appropriate default.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://adexchangebuyer.googleapis.com/v2beta1/accounts/{accountId}/clients',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId'],
pathParams: ['accountId'],
context: self
};
return createAPIRequest(parameters, callback);
},
invitations: {
/**
* adexchangebuyer2.accounts.clients.invitations.create
*
* @desc Creates and sends out an email invitation to access an Ad Exchange client buyer account.
*
* @alias adexchangebuyer2.accounts.clients.invitations.create
* @memberOf! adexchangebuyer2(v2beta1)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Numerical account ID of the client's sponsor buyer. (required)
* @param {string} params.clientAccountId Numerical account ID of the client buyer that the user should be associated with. (required)
* @param {adexchangebuyer2(v2beta1).ClientUserInvitation} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
create: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://adexchangebuyer.googleapis.com/v2beta1/accounts/{accountId}/clients/{clientAccountId}/invitations',
method: 'POST'
}, options),
params: params,
requiredParams: ['accountId', 'clientAccountId'],
pathParams: ['accountId', 'clientAccountId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer2.accounts.clients.invitations.get
*
* @desc Retrieves an existing client user invitation.
*
* @alias adexchangebuyer2.accounts.clients.invitations.get
* @memberOf! adexchangebuyer2(v2beta1)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Numerical account ID of the client's sponsor buyer. (required)
* @param {string} params.clientAccountId Numerical account ID of the client buyer that the user invitation to be retrieved is associated with. (required)
* @param {string} params.invitationId Numerical identifier of the user invitation to retrieve. (required)
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://adexchangebuyer.googleapis.com/v2beta1/accounts/{accountId}/clients/{clientAccountId}/invitations/{invitationId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'clientAccountId', 'invitationId'],
pathParams: ['accountId', 'clientAccountId', 'invitationId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer2.accounts.clients.invitations.list
*
* @desc Lists all the client users invitations for a client with a given account ID.
*
* @alias adexchangebuyer2.accounts.clients.invitations.list
* @memberOf! adexchangebuyer2(v2beta1)
*
* @param {object} params Parameters for request
* @param {string=} params.pageToken A token identifying a page of results the server should return. Typically, this is the value of ListClientUserInvitationsResponse.nextPageToken returned from the previous call to the clients.invitations.list method.
* @param {string} params.accountId Numerical account ID of the client's sponsor buyer. (required)
* @param {integer=} params.pageSize Requested page size. Server may return fewer clients than requested. If unspecified, server will pick an appropriate default.
* @param {string} params.clientAccountId Numerical account ID of the client buyer to list invitations for. (required) You must either specify a string representation of a numerical account identifier or the `-` character to list all the invitations for all the clients of a given sponsor buyer.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://adexchangebuyer.googleapis.com/v2beta1/accounts/{accountId}/clients/{clientAccountId}/invitations',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'clientAccountId'],
pathParams: ['accountId', 'clientAccountId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
users: {
/**
* adexchangebuyer2.accounts.clients.users.update
*
* @desc Updates an existing client user. Only the user status can be changed on update.
*
* @alias adexchangebuyer2.accounts.clients.users.update
* @memberOf! adexchangebuyer2(v2beta1)
*
* @param {object} params Parameters for request
* @param {string} params.userId Numerical identifier of the user to retrieve. (required)
* @param {string} params.accountId Numerical account ID of the client's sponsor buyer. (required)
* @param {string} params.clientAccountId Numerical account ID of the client buyer that the user to be retrieved is associated with. (required)
* @param {adexchangebuyer2(v2beta1).ClientUser} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://adexchangebuyer.googleapis.com/v2beta1/accounts/{accountId}/clients/{clientAccountId}/users/{userId}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['accountId', 'clientAccountId', 'userId'],
pathParams: ['userId', 'accountId', 'clientAccountId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer2.accounts.clients.users.list
*
* @desc Lists all the known client users for a specified sponsor buyer account ID.
*
* @alias adexchangebuyer2.accounts.clients.users.list
* @memberOf! adexchangebuyer2(v2beta1)
*
* @param {object} params Parameters for request
* @param {string=} params.pageToken A token identifying a page of results the server should return. Typically, this is the value of ListClientUsersResponse.nextPageToken returned from the previous call to the accounts.clients.users.list method.
* @param {string} params.accountId Numerical account ID of the sponsor buyer of the client to list users for. (required)
* @param {integer=} params.pageSize Requested page size. The server may return fewer clients than requested. If unspecified, the server will pick an appropriate default.
* @param {string} params.clientAccountId The account ID of the client buyer to list users for. (required) You must specify either a string representation of a numerical account identifier or the `-` character to list all the client users for all the clients of a given sponsor buyer.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://adexchangebuyer.googleapis.com/v2beta1/accounts/{accountId}/clients/{clientAccountId}/users',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'clientAccountId'],
pathParams: ['accountId', 'clientAccountId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer2.accounts.clients.users.get
*
* @desc Retrieves an existing client user.
*
* @alias adexchangebuyer2.accounts.clients.users.get
* @memberOf! adexchangebuyer2(v2beta1)
*
* @param {object} params Parameters for request
* @param {string} params.userId Numerical identifier of the user to retrieve. (required)
* @param {string} params.accountId Numerical account ID of the client's sponsor buyer. (required)
* @param {string} params.clientAccountId Numerical account ID of the client buyer that the user to be retrieved is associated with. (required)
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://adexchangebuyer.googleapis.com/v2beta1/accounts/{accountId}/clients/{clientAccountId}/users/{userId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'clientAccountId', 'userId'],
pathParams: ['userId', 'accountId', 'clientAccountId'],
context: self
};
return createAPIRequest(parameters, callback);
}
}
},
creatives: {
/**
* adexchangebuyer2.accounts.creatives.create
*
* @desc Creates a creative.
*
* @alias adexchangebuyer2.accounts.creatives.create
* @memberOf! adexchangebuyer2(v2beta1)
*
* @param {object} params Parameters for request
* @param {string=} params.duplicateIdMode Indicates if multiple creatives can share an ID or not. Default is NO_DUPLICATES (one ID per creative).
* @param {string} params.accountId The account that this creative belongs to. Can be used to filter the response of the creatives.list method.
* @param {adexchangebuyer2(v2beta1).Creative} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
create: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://adexchangebuyer.googleapis.com/v2beta1/accounts/{accountId}/creatives',
method: 'POST'
}, options),
params: params,
requiredParams: ['accountId'],
pathParams: ['accountId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer2.accounts.creatives.stopWatching
*
* @desc Stops watching a creative. Will stop push notifications being sent to the topics when the creative changes status.
*
* @alias adexchangebuyer2.accounts.creatives.stopWatching
* @memberOf! adexchangebuyer2(v2beta1)
*
* @param {object} params Parameters for request
* @param {string} params.accountId The account of the creative to stop notifications for.
* @param {string} params.creativeId The creative ID of the creative to stop notifications for. Specify "-" to specify stopping account level notifications.
* @param {adexchangebuyer2(v2beta1).StopWatchingCreativeRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
stopWatching: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://adexchangebuyer.googleapis.com/v2beta1/accounts/{accountId}/creatives/{creativeId}:stopWatching',
method: 'POST'
}, options),
params: params,
requiredParams: ['accountId', 'creativeId'],
pathParams: ['accountId', 'creativeId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer2.accounts.creatives.get
*
* @desc Gets a creative.
*
* @alias adexchangebuyer2.accounts.creatives.get
* @memberOf! adexchangebuyer2(v2beta1)
*
* @param {object} params Parameters for request
* @param {string} params.creativeId The ID of the creative to retrieve.
* @param {string} params.accountId The account the creative belongs to.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://adexchangebuyer.googleapis.com/v2beta1/accounts/{accountId}/creatives/{creativeId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'creativeId'],
pathParams: ['creativeId', 'accountId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer2.accounts.creatives.watch
*
* @desc Watches a creative. Will result in push notifications being sent to the topic when the creative changes status.
*
* @alias adexchangebuyer2.accounts.creatives.watch
* @memberOf! adexchangebuyer2(v2beta1)
*
* @param {object} params Parameters for request
* @param {string} params.creativeId The creative ID to watch for status changes. Specify "-" to watch all creatives under the above account. If both creative-level and account-level notifications are sent, only a single notification will be sent to the creative-level notification topic.
* @param {string} params.accountId The account of the creative to watch.
* @param {adexchangebuyer2(v2beta1).WatchCreativeRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
watch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://adexchangebuyer.googleapis.com/v2beta1/accounts/{accountId}/creatives/{creativeId}:watch',
method: 'POST'
}, options),
params: params,
requiredParams: ['accountId', 'creativeId'],
pathParams: ['creativeId', 'accountId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer2.accounts.creatives.update
*
* @desc Updates a creative.
*
* @alias adexchangebuyer2.accounts.creatives.update
* @memberOf! adexchangebuyer2(v2beta1)
*
* @param {object} params Parameters for request
* @param {string} params.accountId The account that this creative belongs to. Can be used to filter the response of the creatives.list method.
* @param {string} params.creativeId The buyer-defined creative ID of this creative. Can be used to filter the response of the creatives.list method.
* @param {adexchangebuyer2(v2beta1).Creative} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://adexchangebuyer.googleapis.com/v2beta1/accounts/{accountId}/creatives/{creativeId}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['accountId', 'creativeId'],
pathParams: ['accountId', 'creativeId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer2.accounts.creatives.list
*
* @desc Lists creatives.
*
* @alias adexchangebuyer2.accounts.creatives.list
* @memberOf! adexchangebuyer2(v2beta1)
*
* @param {object} params Parameters for request
* @param {string=} params.pageToken A token identifying a page of results the server should return. Typically, this is the value of ListCreativesResponse.next_page_token returned from the previous call to 'ListCreatives' method.
* @param {string} params.accountId The account to list the creatives from. Specify "-" to list all creatives the current user has access to.
* @param {integer=} params.pageSize Requested page size. The server may return fewer creatives than requested (due to timeout constraint) even if more are available via another call. If unspecified, server will pick an appropriate default. Acceptable values are 1 to 1000, inclusive.
* @param {string=} params.query An optional query string to filter creatives. If no filter is specified, all active creatives will be returned. Supported queries are: <ul> <li>accountId=<i>account_id_string</i> <li>creativeId=<i>creative_id_string</i> <li>dealsStatus: {approved, conditionally_approved, disapproved, not_checked} <li>openAuctionStatus: {approved, conditionally_approved, disapproved, not_checked} <li>attribute: {a numeric attribute from the list of attributes} <li>disapprovalReason: {a reason from DisapprovalReason </ul> Example: 'accountId=12345 AND (dealsStatus:disapproved AND disapprovalReason:unacceptable_content) OR attribute:47'
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://adexchangebuyer.googleapis.com/v2beta1/accounts/{accountId}/creatives',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId'],
pathParams: ['accountId'],
context: self
};
return createAPIRequest(parameters, callback);
},
dealAssociations: {
/**
* adexchangebuyer2.accounts.creatives.dealAssociations.list
*
* @desc List all creative-deal associations.
*
* @alias adexchangebuyer2.accounts.creatives.dealAssociations.list
* @memberOf! adexchangebuyer2(v2beta1)
*
* @param {object} params Parameters for request
* @param {string} params.creativeId The creative ID to list the associations from. Specify "-" to list all creatives under the above account.
* @param {string=} params.pageToken A token identifying a page of results the server should return. Typically, this is the value of ListDealAssociationsResponse.next_page_token returned from the previous call to 'ListDealAssociations' method.
* @param {string} params.accountId The account to list the associations from. Specify "-" to list all creatives the current user has access to.
* @param {integer=} params.pageSize Requested page size. Server may return fewer associations than requested. If unspecified, server will pick an appropriate default.
* @param {string=} params.query An optional query string to filter deal associations. If no filter is specified, all associations will be returned. Supported queries are: <ul> <li>accountId=<i>account_id_string</i> <li>creativeId=<i>creative_id_string</i> <li>dealsId=<i>deals_id_string</i> <li>dealsStatus:{approved, conditionally_approved, disapproved, not_checked} <li>openAuctionStatus:{approved, conditionally_approved, disapproved, not_checked} </ul> Example: 'dealsId=12345 AND dealsStatus:disapproved'
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://adexchangebuyer.googleapis.com/v2beta1/accounts/{accountId}/creatives/{creativeId}/dealAssociations',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'creativeId'],
pathParams: ['creativeId', 'accountId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer2.accounts.creatives.dealAssociations.add
*
* @desc Associate an existing deal with a creative.
*
* @alias adexchangebuyer2.accounts.creatives.dealAssociations.add
* @memberOf! adexchangebuyer2(v2beta1)
*
* @param {object} params Parameters for request
* @param {string} params.creativeId The ID of the creative associated with the deal.
* @param {string} params.accountId The account the creative belongs to.
* @param {adexchangebuyer2(v2beta1).AddDealAssociationRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
add: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://adexchangebuyer.googleapis.com/v2beta1/accounts/{accountId}/creatives/{creativeId}/dealAssociations:add',
method: 'POST'
}, options),
params: params,
requiredParams: ['accountId', 'creativeId'],
pathParams: ['creativeId', 'accountId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangebuyer2.accounts.creatives.dealAssociations.remove
*
* @desc Remove the association between a deal and a creative.
*
* @alias adexchangebuyer2.accounts.creatives.dealAssociations.remove
* @memberOf! adexchangebuyer2(v2beta1)
*
* @param {object} params Parameters for request
* @param {string} params.creativeId The ID of the creative associated with the deal.
* @param {string} params.accountId The account the creative belongs to.
* @param {adexchangebuyer2(v2beta1).RemoveDealAssociationRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
remove: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://adexchangebuyer.googleapis.com/v2beta1/accounts/{accountId}/creatives/{creativeId}/dealAssociations:remove',
method: 'POST'
}, options),
params: params,
requiredParams: ['accountId', 'creativeId'],
pathParams: ['creativeId', 'accountId'],
context: self
};
return createAPIRequest(parameters, callback);
}
}
}
};
}
/**
* @typedef AuctionContext
* @memberOf! adexchangebuyer2(v2beta1)
* @type object
* @property {string[]} auctionTypes The auction types this restriction applies to.
*/
/**
* @typedef ListClientUserInvitationsResponse
* @memberOf! adexchangebuyer2(v2beta1)
* @type object
* @property {string} nextPageToken A token to retrieve the next page of results.
Pass this value in the
ListClientUserInvitationsRequest.pageToken
field in the subsequent call to the
clients.invitations.list
method to retrieve the next
page of results.
* @property {adexchangebuyer2(v2beta1).ClientUserInvitation[]} invitations The returned list of client users.
*/
/**
* @typedef ListClientUsersResponse
* @memberOf! adexchangebuyer2(v2beta1)
* @type object
* @property {string} nextPageToken A token to retrieve the next page of results.
Pass this value in the
ListClientUsersRequest.pageToken
field in the subsequent call to the
clients.invitations.list
method to retrieve the next
page of results.
* @property {adexchangebuyer2(v2beta1).ClientUser[]} users The returned list of client users.
*/
/**
* @typedef LocationContext
* @memberOf! adexchangebuyer2(v2beta1)
* @type object
* @property {integer[]} geoCriteriaIds IDs representing the geo location for this context.
Please refer to the
[geo-table.csv](https://storage.googleapis.com/adx-rtb-dictionaries/geo-table.csv)
file for different geo criteria IDs.
*/
/**
* @typedef PlatformContext
* @memberOf! adexchangebuyer2(v2beta1)
* @type object
* @property {string[]} platforms The platforms this restriction applies to.
*/
/**
* @typedef ClientUser
* @memberOf! adexchangebuyer2(v2beta1)
* @type object
* @property {string} userId The unique numerical ID of the client user
that has accepted an invitation.
The value of this field is ignored in an update operation.
* @property {string} email User's email address. The value of this field
is ignored in an update operation.
* @property {string} clientAccountId Numerical account ID of the client buyer
with which the user is associated; the
buyer must be a client of the current sponsor buyer.
The value of this field is ignored in an update operation.
* @property {string} status The status of the client user.
*/
/**
* @typedef CreativeDealAssociation
* @memberOf! adexchangebuyer2(v2beta1)
* @type object
* @property {string} creativeId The ID of the creative associated with the deal.
* @property {string} dealsId The externalDealId for the deal associated with the creative.
* @property {string} accountId The account the creative belongs to.
*/
/**
* @typedef Creative
* @memberOf! adexchangebuyer2(v2beta1)
* @type object
* @property {adexchangebuyer2(v2beta1).NativeContent} native A native creative.
* @property {adexchangebuyer2(v2beta1).VideoContent} video A video creative.
* @property {adexchangebuyer2(v2beta1).ServingRestriction[]} servingRestrictions @OutputOnly The granular status of this ad in specific contexts.
A context here relates to where something ultimately serves (for example,
a physical location, a platform, an HTTPS vs HTTP request, or the type
of auction).
* @property {string} agencyId The agency ID for this creative.
* @property {string[]} clickThroughUrls The set of destination URLs for the creative.
* @property {integer[]} detectedSensitiveCategories @OutputOnly Detected sensitive categories, if any.
See the ad-sensitive-categories.txt file in the technical documentation for
a list of IDs. You should use these IDs along with the
excluded-sensitive-category field in the bid request to filter your bids.
* @property {string} adChoicesDestinationUrl The link to AdChoices destination page.
* @property {string[]} restrictedCategories All restricted categories for the ads that may be shown from this creative.
* @property {adexchangebuyer2(v2beta1).Correction[]} corrections @OutputOnly Shows any corrections that were applied to this creative.
* @property {integer} version @OutputOnly The version of this creative.
* @property {integer[]} vendorIds All vendor IDs for the ads that may be shown from this creative.
See https://storage.googleapis.com/adx-rtb-dictionaries/vendors.txt
for possible values.
* @property {string[]} impressionTrackingUrls The set of URLs to be called to record an impression.
* @property {adexchangebuyer2(v2beta1).HtmlContent} html An HTML creative.
* @property {string} dealsStatus @OutputOnly The top-level deals status of this creative.
If disapproved, an entry for 'auctionType=DIRECT_DEALS' (or 'ALL') in
serving_restrictions will also exist. Note
that this may be nuanced with other contextual restrictions, in which case,
it may be preferable to read from serving_restrictions directly.
Can be used to filter the response of the
creatives.list
method.
* @property {integer[]} detectedProductCategories @OutputOnly Detected product categories, if any.
See the ad-product-categories.txt file in the technical documentation
for a list of IDs.
* @property {string} openAuctionStatus @OutputOnly The top-level open auction status of this creative.
If disapproved, an entry for 'auctionType = OPEN_AUCTION' (or 'ALL') in
serving_restrictions will also exist. Note
that this may be nuanced with other contextual restrictions, in which case,
it may be preferable to read from serving_restrictions directly.
Can be used to filter the response of the
creatives.list
method.
* @property {string} advertiserName The name of the company being advertised in the creative.
* @property {string[]} detectedAdvertiserIds @OutputOnly Detected advertiser IDs, if any.
* @property {string[]} detectedDomains @OutputOnly
The detected domains for this creative.
* @property {adexchangebuyer2(v2beta1).FilteringStats} filteringStats @OutputOnly The filtering stats for this creative.
* @property {string[]} attributes All attributes for the ads that may be shown from this creative.
Can be used to filter the response of the
creatives.list
method.
* @property {string} apiUpdateTime @OutputOnly The last update timestamp of the creative via API.
* @property {string[]} detectedLanguages @OutputOnly
The detected languages for this creative. The order is arbitrary. The codes
are 2 or 5 characters and are documented at
https://developers.google.com/adwords/api/docs/appendix/languagecodes.
* @property {string} creativeId The buyer-defined creative ID of this creative.
Can be used to filter the response of the
creatives.list
method.
* @property {string} accountId The account that this creative belongs to.
Can be used to filter the response of the
creatives.list
method.
*/
/**
* @typedef FilteringStats
* @memberOf! adexchangebuyer2(v2beta1)
* @type object
* @property {adexchangebuyer2(v2beta1).Reason[]} reasons The set of filtering reasons for this date.
* @property {adexchangebuyer2(v2beta1).Date} date The day during which the data was collected.
The data is collected from 00:00:00 to 23:59:59 PT.
During switches from PST to PDT and back, the day may
contain 23 or 25 hours of data instead of the usual 24.
*/
/**
* @typedef RemoveDealAssociationRequest
* @memberOf! adexchangebuyer2(v2beta1)
* @type object
* @property {adexchangebuyer2(v2beta1).CreativeDealAssociation} association The association between a creative and a deal that should be removed.
*/
/**
* @typedef Client
* @memberOf! adexchangebuyer2(v2beta1)
* @type object
* @property {boolean} visibleToSeller Whether the client buyer will be visible to sellers.
* @property {string} entityId Numerical identifier of the client entity.
The entity can be an advertiser, a brand, or an agency.
This identifier is unique among all the entities with the same type.
A list of all known advertisers with their identifiers is available in the
[advertisers.txt](https://storage.googleapis.com/adx-rtb-dictionaries/advertisers.txt)
file.
A list of all known brands with their identifiers is available in the
[brands.txt](https://storage.googleapis.com/adx-rtb-dictionaries/brands.txt)
file.
A list of all known agencies with their identifiers is available in the
[agencies.txt](https://storage.googleapis.com/adx-rtb-dictionaries/agencies.txt)
file.
* @property {string} clientAccountId The globally-unique numerical ID of the client.
The value of this field is ignored in create and update operations.
* @property {string} entityName The name of the entity. This field is automatically fetched based on
the type and ID.
The value of this field is ignored in create and update operations.
* @property {string} status The status of the client buyer.
* @property {string} entityType The type of the client entity: `ADVERTISER`, `BRAND`, or `AGENCY`.
* @property {string} clientName Name used to represent this client to publishers.
You may have multiple clients that map to the same entity,
but for each client the combination of `clientName` and entity
must be unique.
You can specify this field as empty.
* @property {string} role The role which is assigned to the client buyer. Each role implies a set of
permissions granted to the client. Must be one of `CLIENT_DEAL_VIEWER`,
`CLIENT_DEAL_NEGOTIATOR` or `CLIENT_DEAL_APPROVER`.
*/
/**
* @typedef Correction
* @memberOf! adexchangebuyer2(v2beta1)
* @type object
* @property {string[]} details Additional details about what was corrected.
* @property {string} type The type of correction that was applied to the creative.
* @property {adexchangebuyer2(v2beta1).ServingContext[]} contexts The contexts for the correction.
*/
/**
* @typedef ListDealAssociationsResponse
* @memberOf! adexchangebuyer2(v2beta1)
* @type object
* @property {string} nextPageToken A token to retrieve the next page of results.
Pass this value in the
ListDealAssociationsRequest.page_token
field in the subsequent call to 'ListDealAssociation' method to retrieve
the next page of results.
* @property {adexchangebuyer2(v2beta1).CreativeDealAssociation[]} associations The list of associations.
*/
/**
* @typedef AddDealAssociationRequest
* @memberOf! adexchangebuyer2(v2beta1)
* @type object
* @property {adexchangebuyer2(v2beta1).CreativeDealAssociation} association The association between a creative and a deal that should be added.
*/
/**
* @typedef StopWatchingCreativeRequest
* @memberOf! adexchangebuyer2(v2beta1)
* @type object
*/
/**
* @typedef Disapproval
* @memberOf! adexchangebuyer2(v2beta1)
* @type object
* @property {string[]} details Additional details about the reason for disapproval.
* @property {string} reason The categorized reason for disapproval.
*/
/**
* @typedef ServingRestriction
* @memberOf! adexchangebuyer2(v2beta1)
* @type object
* @property {adexchangebuyer2(v2beta1).ServingContext[]} contexts The contexts for the restriction.
* @property {string} status The status of the creative in this context (for example, it has been
explicitly disapproved or is pending review).
* @property {adexchangebuyer2(v2beta1).Disapproval[]} disapprovalReasons Any disapprovals bound to this restriction.
Only present if status=DISAPPROVED.
Can be used to filter the response of the
creatives.list
method.
*/
/**
* @typedef Date
* @memberOf! adexchangebuyer2(v2beta1)
* @type object
* @property {integer} month Month of year. Must be from 1 to 12.
* @property {integer} year Year of date. Must be from 1 to 9999, or 0 if specifying a date without
a year.
* @property {integer} day Day of month. Must be from 1 to 31 and valid for the year and month, or 0
if specifying a year/month where the day is not significant.
*/
/**
* @typedef Empty
* @memberOf! adexchangebuyer2(v2beta1)
* @type object
*/
/**
* @typedef WatchCreativeRequest
* @memberOf! adexchangebuyer2(v2beta1)
* @type object
* @property {string} topic The Pub/Sub topic to publish notifications to.
This topic must already exist and must give permission to
ad-exchange-buyside-reports@google.com to write to the topic.
This should be the full resource name in
"projects/{project_id}/topics/{topic_id}" format.
*/
/**
* @typedef AppContext
* @memberOf! adexchangebuyer2(v2beta1)
* @type object
* @property {string[]} appTypes The app types this restriction applies to.
*/
/**
* @typedef ListClientsResponse
* @memberOf! adexchangebuyer2(v2beta1)
* @type object
* @property {string} nextPageToken A token to retrieve the next page of results.
Pass this value in the
ListClientsRequest.pageToken
field in the subsequent call to the
accounts.clients.list method
to retrieve the next page of results.
* @property {adexchangebuyer2(v2beta1).Client[]} clients The returned list of clients.
*/
/**
* @typedef NativeContent
* @memberOf! adexchangebuyer2(v2beta1)
* @type object
* @property {adexchangebuyer2(v2beta1).Image} image A large image.
* @property {string} clickTrackingUrl The URL to use for click tracking.
* @property {string} advertiserName The name of the advertiser or sponsor, to be displayed in the ad creative.
* @property {string} storeUrl The URL to the app store to purchase/download the promoted app.
* @property {string} headline A short title for the ad.
* @property {adexchangebuyer2(v2beta1).Image} appIcon The app icon, for app download ads.
* @property {string} callToAction A label for the button that the user is supposed to click.
* @property {string} body A long description of the ad.
* @property {number} starRating The app rating in the app store. Must be in the range [0-5].
* @property {string} videoUrl The URL to fetch a native video ad.
* @property {adexchangebuyer2(v2beta1).Image} logo A smaller image, for the advertiser's logo.
* @property {string} clickLinkUrl The URL that the browser/SDK will load when the user clicks the ad.
* @property {string} priceDisplayText The price of the promoted app including currency info.
*/
/**
* @typedef SecurityContext
* @memberOf! adexchangebuyer2(v2beta1)
* @type object
* @property {string[]} securities The security types in this context.
*/
/**
* @typedef HtmlContent
* @memberOf! adexchangebuyer2(v2beta1)
* @type object
* @property {integer} width The width of the HTML snippet in pixels.
* @property {string} snippet The HTML snippet that displays the ad when inserted in the web page.
* @property {integer} height The height of the HTML snippet in pixels.
*/
/**
* @typedef ListCreativesResponse
* @memberOf! adexchangebuyer2(v2beta1)
* @type object
* @property {string} nextPageToken A token to retrieve the next page of results.
Pass this value in the
ListCreativesRequest.page_token
field in the subsequent call to `ListCreatives` method to retrieve the next
page of results.
* @property {adexchangebuyer2(v2beta1).Creative[]} creatives The list of creatives.
*/
/**
* @typedef ServingContext
* @memberOf! adexchangebuyer2(v2beta1)
* @type object
* @property {adexchangebuyer2(v2beta1).AuctionContext} auctionType Matches impressions for a particular auction type.
* @property {string} all Matches all contexts.
* @property {adexchangebuyer2(v2beta1).AppContext} appType Matches impressions for a particular app type.
* @property {adexchangebuyer2(v2beta1).SecurityContext} securityType Matches impressions for a particular security type.
* @property {adexchangebuyer2(v2beta1).PlatformContext} platform Matches impressions coming from a particular platform.
* @property {adexchangebuyer2(v2beta1).LocationContext} location Matches impressions coming from users *or* publishers in a specific
location.
*/
/**
* @typedef Image
* @memberOf! adexchangebuyer2(v2beta1)
* @type object
* @property {integer} width Image width in pixels.
* @property {string} url The URL of the image.
* @property {integer} height Image height in pixels.
*/
/**
* @typedef Reason
* @memberOf! adexchangebuyer2(v2beta1)
* @type object
* @property {integer} status The filtering status code. Please refer to the
[creative-status-codes.txt](https://storage.googleapis.com/adx-rtb-dictionaries/creative-status-codes.txt)
file for different statuses.
* @property {string} count The number of times the creative was filtered for the status. The
count is aggregated across all publishers on the exchange.
*/
/**
* @typedef VideoContent
* @memberOf! adexchangebuyer2(v2beta1)
* @type object
* @property {string} videoUrl The URL to fetch a video ad.
*/
/**
* @typedef ClientUserInvitation
* @memberOf! adexchangebuyer2(v2beta1)
* @type object
* @property {string} invitationId The unique numerical ID of the invitation that is sent to the user.
The value of this field is ignored in create operations.
* @property {string} email The email address to which the invitation is sent. Email
addresses should be unique among all client users under each sponsor
buyer.
* @property {string} clientAccountId Numerical account ID of the client buyer
that the invited user is associated with.
The value of this field is ignored in create operations.
*/
module.exports = Adexchangebuyer2;
|
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* Ad Exchange Seller API
*
* Accesses the inventory of Ad Exchange seller users and generates reports.
*
* @example
* var google = require('googleapis');
* var adexchangeseller = google.adexchangeseller('v1.1');
*
* @namespace adexchangeseller
* @type {Function}
* @version v1.1
* @variation v1.1
* @param {object=} options Options for Adexchangeseller
*/
function Adexchangeseller(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.accounts = {
/**
* adexchangeseller.accounts.get
*
* @desc Get information about the selected Ad Exchange account.
*
* @alias adexchangeseller.accounts.get
* @memberOf! adexchangeseller(v1.1)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account to get information about. Tip: 'myaccount' is a valid ID.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangeseller/v1.1/accounts/{accountId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId'],
pathParams: ['accountId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.adclients = {
/**
* adexchangeseller.adclients.list
*
* @desc List all ad clients in this Ad Exchange account.
*
* @alias adexchangeseller.adclients.list
* @memberOf! adexchangeseller(v1.1)
*
* @param {object=} params Parameters for request
* @param {integer=} params.maxResults The maximum number of ad clients to include in the response, used for paging.
* @param {string=} params.pageToken A continuation token, used to page through ad clients. To retrieve the next page, set this parameter to the value of "nextPageToken" from the previous response.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangeseller/v1.1/adclients',
method: 'GET'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.adunits = {
/**
* adexchangeseller.adunits.get
*
* @desc Gets the specified ad unit in the specified ad client.
*
* @alias adexchangeseller.adunits.get
* @memberOf! adexchangeseller(v1.1)
*
* @param {object} params Parameters for request
* @param {string} params.adClientId Ad client for which to get the ad unit.
* @param {string} params.adUnitId Ad unit to retrieve.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangeseller/v1.1/adclients/{adClientId}/adunits/{adUnitId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['adClientId', 'adUnitId'],
pathParams: ['adClientId', 'adUnitId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangeseller.adunits.list
*
* @desc List all ad units in the specified ad client for this Ad Exchange account.
*
* @alias adexchangeseller.adunits.list
* @memberOf! adexchangeseller(v1.1)
*
* @param {object} params Parameters for request
* @param {string} params.adClientId Ad client for which to list ad units.
* @param {boolean=} params.includeInactive Whether to include inactive ad units. Default: true.
* @param {integer=} params.maxResults The maximum number of ad units to include in the response, used for paging.
* @param {string=} params.pageToken A continuation token, used to page through ad units. To retrieve the next page, set this parameter to the value of "nextPageToken" from the previous response.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangeseller/v1.1/adclients/{adClientId}/adunits',
method: 'GET'
}, options),
params: params,
requiredParams: ['adClientId'],
pathParams: ['adClientId'],
context: self
};
return createAPIRequest(parameters, callback);
},
customchannels: {
/**
* adexchangeseller.adunits.customchannels.list
*
* @desc List all custom channels which the specified ad unit belongs to.
*
* @alias adexchangeseller.adunits.customchannels.list
* @memberOf! adexchangeseller(v1.1)
*
* @param {object} params Parameters for request
* @param {string} params.adClientId Ad client which contains the ad unit.
* @param {string} params.adUnitId Ad unit for which to list custom channels.
* @param {integer=} params.maxResults The maximum number of custom channels to include in the response, used for paging.
* @param {string=} params.pageToken A continuation token, used to page through custom channels. To retrieve the next page, set this parameter to the value of "nextPageToken" from the previous response.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangeseller/v1.1/adclients/{adClientId}/adunits/{adUnitId}/customchannels',
method: 'GET'
}, options),
params: params,
requiredParams: ['adClientId', 'adUnitId'],
pathParams: ['adClientId', 'adUnitId'],
context: self
};
return createAPIRequest(parameters, callback);
}
}
};
self.alerts = {
/**
* adexchangeseller.alerts.list
*
* @desc List the alerts for this Ad Exchange account.
*
* @alias adexchangeseller.alerts.list
* @memberOf! adexchangeseller(v1.1)
*
* @param {object=} params Parameters for request
* @param {string=} params.locale The locale to use for translating alert messages. The account locale will be used if this is not supplied. The AdSense default (English) will be used if the supplied locale is invalid or unsupported.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangeseller/v1.1/alerts',
method: 'GET'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.customchannels = {
/**
* adexchangeseller.customchannels.get
*
* @desc Get the specified custom channel from the specified ad client.
*
* @alias adexchangeseller.customchannels.get
* @memberOf! adexchangeseller(v1.1)
*
* @param {object} params Parameters for request
* @param {string} params.adClientId Ad client which contains the custom channel.
* @param {string} params.customChannelId Custom channel to retrieve.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangeseller/v1.1/adclients/{adClientId}/customchannels/{customChannelId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['adClientId', 'customChannelId'],
pathParams: ['adClientId', 'customChannelId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangeseller.customchannels.list
*
* @desc List all custom channels in the specified ad client for this Ad Exchange account.
*
* @alias adexchangeseller.customchannels.list
* @memberOf! adexchangeseller(v1.1)
*
* @param {object} params Parameters for request
* @param {string} params.adClientId Ad client for which to list custom channels.
* @param {integer=} params.maxResults The maximum number of custom channels to include in the response, used for paging.
* @param {string=} params.pageToken A continuation token, used to page through custom channels. To retrieve the next page, set this parameter to the value of "nextPageToken" from the previous response.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangeseller/v1.1/adclients/{adClientId}/customchannels',
method: 'GET'
}, options),
params: params,
requiredParams: ['adClientId'],
pathParams: ['adClientId'],
context: self
};
return createAPIRequest(parameters, callback);
},
adunits: {
/**
* adexchangeseller.customchannels.adunits.list
*
* @desc List all ad units in the specified custom channel.
*
* @alias adexchangeseller.customchannels.adunits.list
* @memberOf! adexchangeseller(v1.1)
*
* @param {object} params Parameters for request
* @param {string} params.adClientId Ad client which contains the custom channel.
* @param {string} params.customChannelId Custom channel for which to list ad units.
* @param {boolean=} params.includeInactive Whether to include inactive ad units. Default: true.
* @param {integer=} params.maxResults The maximum number of ad units to include in the response, used for paging.
* @param {string=} params.pageToken A continuation token, used to page through ad units. To retrieve the next page, set this parameter to the value of "nextPageToken" from the previous response.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangeseller/v1.1/adclients/{adClientId}/customchannels/{customChannelId}/adunits',
method: 'GET'
}, options),
params: params,
requiredParams: ['adClientId', 'customChannelId'],
pathParams: ['adClientId', 'customChannelId'],
context: self
};
return createAPIRequest(parameters, callback);
}
}
};
self.metadata = {
dimensions: {
/**
* adexchangeseller.metadata.dimensions.list
*
* @desc List the metadata for the dimensions available to this AdExchange account.
*
* @alias adexchangeseller.metadata.dimensions.list
* @memberOf! adexchangeseller(v1.1)
*
* @param {object=} params Parameters for request
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangeseller/v1.1/metadata/dimensions',
method: 'GET'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
},
metrics: {
/**
* adexchangeseller.metadata.metrics.list
*
* @desc List the metadata for the metrics available to this AdExchange account.
*
* @alias adexchangeseller.metadata.metrics.list
* @memberOf! adexchangeseller(v1.1)
*
* @param {object=} params Parameters for request
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangeseller/v1.1/metadata/metrics',
method: 'GET'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
}
};
self.preferreddeals = {
/**
* adexchangeseller.preferreddeals.get
*
* @desc Get information about the selected Ad Exchange Preferred Deal.
*
* @alias adexchangeseller.preferreddeals.get
* @memberOf! adexchangeseller(v1.1)
*
* @param {object} params Parameters for request
* @param {string} params.dealId Preferred deal to get information about.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangeseller/v1.1/preferreddeals/{dealId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['dealId'],
pathParams: ['dealId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangeseller.preferreddeals.list
*
* @desc List the preferred deals for this Ad Exchange account.
*
* @alias adexchangeseller.preferreddeals.list
* @memberOf! adexchangeseller(v1.1)
*
* @param {object=} params Parameters for request
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangeseller/v1.1/preferreddeals',
method: 'GET'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.reports = {
/**
* adexchangeseller.reports.generate
*
* @desc Generate an Ad Exchange report based on the report request sent in the query parameters. Returns the result as JSON; to retrieve output in CSV format specify "alt=csv" as a query parameter.
*
* @alias adexchangeseller.reports.generate
* @memberOf! adexchangeseller(v1.1)
*
* @param {object} params Parameters for request
* @param {string=} params.dimension Dimensions to base the report on.
* @param {string} params.endDate End of the date range to report on in "YYYY-MM-DD" format, inclusive.
* @param {string=} params.filter Filters to be run on the report.
* @param {string=} params.locale Optional locale to use for translating report output to a local language. Defaults to "en_US" if not specified.
* @param {integer=} params.maxResults The maximum number of rows of report data to return.
* @param {string=} params.metric Numeric columns to include in the report.
* @param {string=} params.sort The name of a dimension or metric to sort the resulting report on, optionally prefixed with "+" to sort ascending or "-" to sort descending. If no prefix is specified, the column is sorted ascending.
* @param {string} params.startDate Start of the date range to report on in "YYYY-MM-DD" format, inclusive.
* @param {integer=} params.startIndex Index of the first row of report data to return.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
generate: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangeseller/v1.1/reports',
method: 'GET'
}, options),
params: params,
requiredParams: ['startDate', 'endDate'],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
saved: {
/**
* adexchangeseller.reports.saved.generate
*
* @desc Generate an Ad Exchange report based on the saved report ID sent in the query parameters.
*
* @alias adexchangeseller.reports.saved.generate
* @memberOf! adexchangeseller(v1.1)
*
* @param {object} params Parameters for request
* @param {string=} params.locale Optional locale to use for translating report output to a local language. Defaults to "en_US" if not specified.
* @param {integer=} params.maxResults The maximum number of rows of report data to return.
* @param {string} params.savedReportId The saved report to retrieve.
* @param {integer=} params.startIndex Index of the first row of report data to return.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
generate: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangeseller/v1.1/reports/{savedReportId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['savedReportId'],
pathParams: ['savedReportId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangeseller.reports.saved.list
*
* @desc List all saved reports in this Ad Exchange account.
*
* @alias adexchangeseller.reports.saved.list
* @memberOf! adexchangeseller(v1.1)
*
* @param {object=} params Parameters for request
* @param {integer=} params.maxResults The maximum number of saved reports to include in the response, used for paging.
* @param {string=} params.pageToken A continuation token, used to page through saved reports. To retrieve the next page, set this parameter to the value of "nextPageToken" from the previous response.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangeseller/v1.1/reports/saved',
method: 'GET'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
}
};
self.urlchannels = {
/**
* adexchangeseller.urlchannels.list
*
* @desc List all URL channels in the specified ad client for this Ad Exchange account.
*
* @alias adexchangeseller.urlchannels.list
* @memberOf! adexchangeseller(v1.1)
*
* @param {object} params Parameters for request
* @param {string} params.adClientId Ad client for which to list URL channels.
* @param {integer=} params.maxResults The maximum number of URL channels to include in the response, used for paging.
* @param {string=} params.pageToken A continuation token, used to page through URL channels. To retrieve the next page, set this parameter to the value of "nextPageToken" from the previous response.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangeseller/v1.1/adclients/{adClientId}/urlchannels',
method: 'GET'
}, options),
params: params,
requiredParams: ['adClientId'],
pathParams: ['adClientId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
}
/**
* @typedef Account
* @memberOf! adexchangeseller(v1.1)
* @type object
* @property {string} id Unique identifier of this account.
* @property {string} kind Kind of resource this is, in this case adexchangeseller#account.
* @property {string} name Name of this account.
*/
/**
* @typedef AdClient
* @memberOf! adexchangeseller(v1.1)
* @type object
* @property {boolean} arcOptIn Whether this ad client is opted in to ARC.
* @property {string} id Unique identifier of this ad client.
* @property {string} kind Kind of resource this is, in this case adexchangeseller#adClient.
* @property {string} productCode This ad client's product code, which corresponds to the PRODUCT_CODE report dimension.
* @property {boolean} supportsReporting Whether this ad client supports being reported on.
*/
/**
* @typedef AdClients
* @memberOf! adexchangeseller(v1.1)
* @type object
* @property {string} etag ETag of this response for caching purposes.
* @property {adexchangeseller(v1.1).AdClient[]} items The ad clients returned in this list response.
* @property {string} kind Kind of list this is, in this case adexchangeseller#adClients.
* @property {string} nextPageToken Continuation token used to page through ad clients. To retrieve the next page of results, set the next request's "pageToken" value to this.
*/
/**
* @typedef AdUnit
* @memberOf! adexchangeseller(v1.1)
* @type object
* @property {string} code Identity code of this ad unit, not necessarily unique across ad clients.
* @property {string} id Unique identifier of this ad unit. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.
* @property {string} kind Kind of resource this is, in this case adexchangeseller#adUnit.
* @property {string} name Name of this ad unit.
* @property {string} status Status of this ad unit. Possible values are:
NEW: Indicates that the ad unit was created within the last seven days and does not yet have any activity associated with it.
ACTIVE: Indicates that there has been activity on this ad unit in the last seven days.
INACTIVE: Indicates that there has been no activity on this ad unit in the last seven days.
*/
/**
* @typedef AdUnits
* @memberOf! adexchangeseller(v1.1)
* @type object
* @property {string} etag ETag of this response for caching purposes.
* @property {adexchangeseller(v1.1).AdUnit[]} items The ad units returned in this list response.
* @property {string} kind Kind of list this is, in this case adexchangeseller#adUnits.
* @property {string} nextPageToken Continuation token used to page through ad units. To retrieve the next page of results, set the next request's "pageToken" value to this.
*/
/**
* @typedef Alert
* @memberOf! adexchangeseller(v1.1)
* @type object
* @property {string} id Unique identifier of this alert. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.
* @property {string} kind Kind of resource this is, in this case adexchangeseller#alert.
* @property {string} message The localized alert message.
* @property {string} severity Severity of this alert. Possible values: INFO, WARNING, SEVERE.
* @property {string} type Type of this alert. Possible values: SELF_HOLD, MIGRATED_TO_BILLING3, ADDRESS_PIN_VERIFICATION, PHONE_PIN_VERIFICATION, CORPORATE_ENTITY, GRAYLISTED_PUBLISHER, API_HOLD.
*/
/**
* @typedef Alerts
* @memberOf! adexchangeseller(v1.1)
* @type object
* @property {adexchangeseller(v1.1).Alert[]} items The alerts returned in this list response.
* @property {string} kind Kind of list this is, in this case adexchangeseller#alerts.
*/
/**
* @typedef CustomChannel
* @memberOf! adexchangeseller(v1.1)
* @type object
* @property {string} code Code of this custom channel, not necessarily unique across ad clients.
* @property {string} id Unique identifier of this custom channel. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.
* @property {string} kind Kind of resource this is, in this case adexchangeseller#customChannel.
* @property {string} name Name of this custom channel.
* @property {object} targetingInfo The targeting information of this custom channel, if activated.
*/
/**
* @typedef CustomChannels
* @memberOf! adexchangeseller(v1.1)
* @type object
* @property {string} etag ETag of this response for caching purposes.
* @property {adexchangeseller(v1.1).CustomChannel[]} items The custom channels returned in this list response.
* @property {string} kind Kind of list this is, in this case adexchangeseller#customChannels.
* @property {string} nextPageToken Continuation token used to page through custom channels. To retrieve the next page of results, set the next request's "pageToken" value to this.
*/
/**
* @typedef Metadata
* @memberOf! adexchangeseller(v1.1)
* @type object
* @property {adexchangeseller(v1.1).ReportingMetadataEntry[]} items
* @property {string} kind Kind of list this is, in this case adexchangeseller#metadata.
*/
/**
* @typedef PreferredDeal
* @memberOf! adexchangeseller(v1.1)
* @type object
* @property {string} advertiserName The name of the advertiser this deal is for.
* @property {string} buyerNetworkName The name of the buyer network this deal is for.
* @property {string} currencyCode The currency code that applies to the fixed_cpm value. If not set then assumed to be USD.
* @property {string} endTime Time when this deal stops being active in seconds since the epoch (GMT). If not set then this deal is valid until manually disabled by the publisher.
* @property {string} fixedCpm The fixed price for this preferred deal. In cpm micros of currency according to currencyCode. If set, then this preferred deal is eligible for the fixed price tier of buying (highest priority, pay exactly the configured fixed price).
* @property {string} id Unique identifier of this preferred deal.
* @property {string} kind Kind of resource this is, in this case adexchangeseller#preferredDeal.
* @property {string} startTime Time when this deal becomes active in seconds since the epoch (GMT). If not set then this deal is active immediately upon creation.
*/
/**
* @typedef PreferredDeals
* @memberOf! adexchangeseller(v1.1)
* @type object
* @property {adexchangeseller(v1.1).PreferredDeal[]} items The preferred deals returned in this list response.
* @property {string} kind Kind of list this is, in this case adexchangeseller#preferredDeals.
*/
/**
* @typedef Report
* @memberOf! adexchangeseller(v1.1)
* @type object
* @property {string[]} averages The averages of the report. This is the same length as any other row in the report; cells corresponding to dimension columns are empty.
* @property {object[]} headers The header information of the columns requested in the report. This is a list of headers; one for each dimension in the request, followed by one for each metric in the request.
* @property {string} kind Kind this is, in this case adexchangeseller#report.
* @property {array[]} rows The output rows of the report. Each row is a list of cells; one for each dimension in the request, followed by one for each metric in the request. The dimension cells contain strings, and the metric cells contain numbers.
* @property {string} totalMatchedRows The total number of rows matched by the report request. Fewer rows may be returned in the response due to being limited by the row count requested or the report row limit.
* @property {string[]} totals The totals of the report. This is the same length as any other row in the report; cells corresponding to dimension columns are empty.
* @property {string[]} warnings Any warnings associated with generation of the report.
*/
/**
* @typedef ReportingMetadataEntry
* @memberOf! adexchangeseller(v1.1)
* @type object
* @property {string[]} compatibleDimensions For metrics this is a list of dimension IDs which the metric is compatible with, for dimensions it is a list of compatibility groups the dimension belongs to.
* @property {string[]} compatibleMetrics The names of the metrics the dimension or metric this reporting metadata entry describes is compatible with.
* @property {string} id Unique identifier of this reporting metadata entry, corresponding to the name of the appropriate dimension or metric.
* @property {string} kind Kind of resource this is, in this case adexchangeseller#reportingMetadataEntry.
* @property {string[]} requiredDimensions The names of the dimensions which the dimension or metric this reporting metadata entry describes requires to also be present in order for the report to be valid. Omitting these will not cause an error or warning, but may result in data which cannot be correctly interpreted.
* @property {string[]} requiredMetrics The names of the metrics which the dimension or metric this reporting metadata entry describes requires to also be present in order for the report to be valid. Omitting these will not cause an error or warning, but may result in data which cannot be correctly interpreted.
* @property {string[]} supportedProducts The codes of the projects supported by the dimension or metric this reporting metadata entry describes.
*/
/**
* @typedef SavedReport
* @memberOf! adexchangeseller(v1.1)
* @type object
* @property {string} id Unique identifier of this saved report.
* @property {string} kind Kind of resource this is, in this case adexchangeseller#savedReport.
* @property {string} name This saved report's name.
*/
/**
* @typedef SavedReports
* @memberOf! adexchangeseller(v1.1)
* @type object
* @property {string} etag ETag of this response for caching purposes.
* @property {adexchangeseller(v1.1).SavedReport[]} items The saved reports returned in this list response.
* @property {string} kind Kind of list this is, in this case adexchangeseller#savedReports.
* @property {string} nextPageToken Continuation token used to page through saved reports. To retrieve the next page of results, set the next request's "pageToken" value to this.
*/
/**
* @typedef UrlChannel
* @memberOf! adexchangeseller(v1.1)
* @type object
* @property {string} id Unique identifier of this URL channel. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.
* @property {string} kind Kind of resource this is, in this case adexchangeseller#urlChannel.
* @property {string} urlPattern URL Pattern of this URL channel. Does not include "http://" or "https://". Example: www.example.com/home
*/
/**
* @typedef UrlChannels
* @memberOf! adexchangeseller(v1.1)
* @type object
* @property {string} etag ETag of this response for caching purposes.
* @property {adexchangeseller(v1.1).UrlChannel[]} items The URL channels returned in this list response.
* @property {string} kind Kind of list this is, in this case adexchangeseller#urlChannels.
* @property {string} nextPageToken Continuation token used to page through URL channels. To retrieve the next page of results, set the next request's "pageToken" value to this.
*/
module.exports = Adexchangeseller;
|
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* Ad Exchange Seller API
*
* Accesses the inventory of Ad Exchange seller users and generates reports.
*
* @example
* var google = require('googleapis');
* var adexchangeseller = google.adexchangeseller('v2.0');
*
* @namespace adexchangeseller
* @type {Function}
* @version v2.0
* @variation v2.0
* @param {object=} options Options for Adexchangeseller
*/
function Adexchangeseller(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.accounts = {
/**
* adexchangeseller.accounts.get
*
* @desc Get information about the selected Ad Exchange account.
*
* @alias adexchangeseller.accounts.get
* @memberOf! adexchangeseller(v2.0)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account to get information about. Tip: 'myaccount' is a valid ID.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangeseller/v2.0/accounts/{accountId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId'],
pathParams: ['accountId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangeseller.accounts.list
*
* @desc List all accounts available to this Ad Exchange account.
*
* @alias adexchangeseller.accounts.list
* @memberOf! adexchangeseller(v2.0)
*
* @param {object=} params Parameters for request
* @param {integer=} params.maxResults The maximum number of accounts to include in the response, used for paging.
* @param {string=} params.pageToken A continuation token, used to page through accounts. To retrieve the next page, set this parameter to the value of "nextPageToken" from the previous response.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangeseller/v2.0/accounts',
method: 'GET'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
adclients: {
/**
* adexchangeseller.accounts.adclients.list
*
* @desc List all ad clients in this Ad Exchange account.
*
* @alias adexchangeseller.accounts.adclients.list
* @memberOf! adexchangeseller(v2.0)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account to which the ad client belongs.
* @param {integer=} params.maxResults The maximum number of ad clients to include in the response, used for paging.
* @param {string=} params.pageToken A continuation token, used to page through ad clients. To retrieve the next page, set this parameter to the value of "nextPageToken" from the previous response.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangeseller/v2.0/accounts/{accountId}/adclients',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId'],
pathParams: ['accountId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
alerts: {
/**
* adexchangeseller.accounts.alerts.list
*
* @desc List the alerts for this Ad Exchange account.
*
* @alias adexchangeseller.accounts.alerts.list
* @memberOf! adexchangeseller(v2.0)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account owning the alerts.
* @param {string=} params.locale The locale to use for translating alert messages. The account locale will be used if this is not supplied. The AdSense default (English) will be used if the supplied locale is invalid or unsupported.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangeseller/v2.0/accounts/{accountId}/alerts',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId'],
pathParams: ['accountId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
customchannels: {
/**
* adexchangeseller.accounts.customchannels.get
*
* @desc Get the specified custom channel from the specified ad client.
*
* @alias adexchangeseller.accounts.customchannels.get
* @memberOf! adexchangeseller(v2.0)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account to which the ad client belongs.
* @param {string} params.adClientId Ad client which contains the custom channel.
* @param {string} params.customChannelId Custom channel to retrieve.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangeseller/v2.0/accounts/{accountId}/adclients/{adClientId}/customchannels/{customChannelId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'adClientId', 'customChannelId'],
pathParams: ['accountId', 'adClientId', 'customChannelId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangeseller.accounts.customchannels.list
*
* @desc List all custom channels in the specified ad client for this Ad Exchange account.
*
* @alias adexchangeseller.accounts.customchannels.list
* @memberOf! adexchangeseller(v2.0)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account to which the ad client belongs.
* @param {string} params.adClientId Ad client for which to list custom channels.
* @param {integer=} params.maxResults The maximum number of custom channels to include in the response, used for paging.
* @param {string=} params.pageToken A continuation token, used to page through custom channels. To retrieve the next page, set this parameter to the value of "nextPageToken" from the previous response.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangeseller/v2.0/accounts/{accountId}/adclients/{adClientId}/customchannels',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'adClientId'],
pathParams: ['accountId', 'adClientId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
metadata: {
dimensions: {
/**
* adexchangeseller.accounts.metadata.dimensions.list
*
* @desc List the metadata for the dimensions available to this AdExchange account.
*
* @alias adexchangeseller.accounts.metadata.dimensions.list
* @memberOf! adexchangeseller(v2.0)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account with visibility to the dimensions.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangeseller/v2.0/accounts/{accountId}/metadata/dimensions',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId'],
pathParams: ['accountId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
metrics: {
/**
* adexchangeseller.accounts.metadata.metrics.list
*
* @desc List the metadata for the metrics available to this AdExchange account.
*
* @alias adexchangeseller.accounts.metadata.metrics.list
* @memberOf! adexchangeseller(v2.0)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account with visibility to the metrics.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangeseller/v2.0/accounts/{accountId}/metadata/metrics',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId'],
pathParams: ['accountId'],
context: self
};
return createAPIRequest(parameters, callback);
}
}
},
preferreddeals: {
/**
* adexchangeseller.accounts.preferreddeals.get
*
* @desc Get information about the selected Ad Exchange Preferred Deal.
*
* @alias adexchangeseller.accounts.preferreddeals.get
* @memberOf! adexchangeseller(v2.0)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account owning the deal.
* @param {string} params.dealId Preferred deal to get information about.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangeseller/v2.0/accounts/{accountId}/preferreddeals/{dealId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'dealId'],
pathParams: ['accountId', 'dealId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangeseller.accounts.preferreddeals.list
*
* @desc List the preferred deals for this Ad Exchange account.
*
* @alias adexchangeseller.accounts.preferreddeals.list
* @memberOf! adexchangeseller(v2.0)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account owning the deals.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangeseller/v2.0/accounts/{accountId}/preferreddeals',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId'],
pathParams: ['accountId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
reports: {
/**
* adexchangeseller.accounts.reports.generate
*
* @desc Generate an Ad Exchange report based on the report request sent in the query parameters. Returns the result as JSON; to retrieve output in CSV format specify "alt=csv" as a query parameter.
*
* @alias adexchangeseller.accounts.reports.generate
* @memberOf! adexchangeseller(v2.0)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account which owns the generated report.
* @param {string=} params.dimension Dimensions to base the report on.
* @param {string} params.endDate End of the date range to report on in "YYYY-MM-DD" format, inclusive.
* @param {string=} params.filter Filters to be run on the report.
* @param {string=} params.locale Optional locale to use for translating report output to a local language. Defaults to "en_US" if not specified.
* @param {integer=} params.maxResults The maximum number of rows of report data to return.
* @param {string=} params.metric Numeric columns to include in the report.
* @param {string=} params.sort The name of a dimension or metric to sort the resulting report on, optionally prefixed with "+" to sort ascending or "-" to sort descending. If no prefix is specified, the column is sorted ascending.
* @param {string} params.startDate Start of the date range to report on in "YYYY-MM-DD" format, inclusive.
* @param {integer=} params.startIndex Index of the first row of report data to return.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
generate: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangeseller/v2.0/accounts/{accountId}/reports',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'startDate', 'endDate'],
pathParams: ['accountId'],
context: self
};
return createAPIRequest(parameters, callback);
},
saved: {
/**
* adexchangeseller.accounts.reports.saved.generate
*
* @desc Generate an Ad Exchange report based on the saved report ID sent in the query parameters.
*
* @alias adexchangeseller.accounts.reports.saved.generate
* @memberOf! adexchangeseller(v2.0)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account owning the saved report.
* @param {string=} params.locale Optional locale to use for translating report output to a local language. Defaults to "en_US" if not specified.
* @param {integer=} params.maxResults The maximum number of rows of report data to return.
* @param {string} params.savedReportId The saved report to retrieve.
* @param {integer=} params.startIndex Index of the first row of report data to return.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
generate: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangeseller/v2.0/accounts/{accountId}/reports/{savedReportId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'savedReportId'],
pathParams: ['accountId', 'savedReportId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adexchangeseller.accounts.reports.saved.list
*
* @desc List all saved reports in this Ad Exchange account.
*
* @alias adexchangeseller.accounts.reports.saved.list
* @memberOf! adexchangeseller(v2.0)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account owning the saved reports.
* @param {integer=} params.maxResults The maximum number of saved reports to include in the response, used for paging.
* @param {string=} params.pageToken A continuation token, used to page through saved reports. To retrieve the next page, set this parameter to the value of "nextPageToken" from the previous response.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangeseller/v2.0/accounts/{accountId}/reports/saved',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId'],
pathParams: ['accountId'],
context: self
};
return createAPIRequest(parameters, callback);
}
}
},
urlchannels: {
/**
* adexchangeseller.accounts.urlchannels.list
*
* @desc List all URL channels in the specified ad client for this Ad Exchange account.
*
* @alias adexchangeseller.accounts.urlchannels.list
* @memberOf! adexchangeseller(v2.0)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account to which the ad client belongs.
* @param {string} params.adClientId Ad client for which to list URL channels.
* @param {integer=} params.maxResults The maximum number of URL channels to include in the response, used for paging.
* @param {string=} params.pageToken A continuation token, used to page through URL channels. To retrieve the next page, set this parameter to the value of "nextPageToken" from the previous response.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adexchangeseller/v2.0/accounts/{accountId}/adclients/{adClientId}/urlchannels',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'adClientId'],
pathParams: ['accountId', 'adClientId'],
context: self
};
return createAPIRequest(parameters, callback);
}
}
};
}
/**
* @typedef Account
* @memberOf! adexchangeseller(v2.0)
* @type object
* @property {string} id Unique identifier of this account.
* @property {string} kind Kind of resource this is, in this case adexchangeseller#account.
* @property {string} name Name of this account.
*/
/**
* @typedef Accounts
* @memberOf! adexchangeseller(v2.0)
* @type object
* @property {string} etag ETag of this response for caching purposes.
* @property {adexchangeseller(v2.0).Account[]} items The accounts returned in this list response.
* @property {string} kind Kind of list this is, in this case adexchangeseller#accounts.
* @property {string} nextPageToken Continuation token used to page through accounts. To retrieve the next page of results, set the next request's "pageToken" value to this.
*/
/**
* @typedef AdClient
* @memberOf! adexchangeseller(v2.0)
* @type object
* @property {boolean} arcOptIn Whether this ad client is opted in to ARC.
* @property {string} id Unique identifier of this ad client.
* @property {string} kind Kind of resource this is, in this case adexchangeseller#adClient.
* @property {string} productCode This ad client's product code, which corresponds to the PRODUCT_CODE report dimension.
* @property {boolean} supportsReporting Whether this ad client supports being reported on.
*/
/**
* @typedef AdClients
* @memberOf! adexchangeseller(v2.0)
* @type object
* @property {string} etag ETag of this response for caching purposes.
* @property {adexchangeseller(v2.0).AdClient[]} items The ad clients returned in this list response.
* @property {string} kind Kind of list this is, in this case adexchangeseller#adClients.
* @property {string} nextPageToken Continuation token used to page through ad clients. To retrieve the next page of results, set the next request's "pageToken" value to this.
*/
/**
* @typedef Alert
* @memberOf! adexchangeseller(v2.0)
* @type object
* @property {string} id Unique identifier of this alert. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.
* @property {string} kind Kind of resource this is, in this case adexchangeseller#alert.
* @property {string} message The localized alert message.
* @property {string} severity Severity of this alert. Possible values: INFO, WARNING, SEVERE.
* @property {string} type Type of this alert. Possible values: SELF_HOLD, MIGRATED_TO_BILLING3, ADDRESS_PIN_VERIFICATION, PHONE_PIN_VERIFICATION, CORPORATE_ENTITY, GRAYLISTED_PUBLISHER, API_HOLD.
*/
/**
* @typedef Alerts
* @memberOf! adexchangeseller(v2.0)
* @type object
* @property {adexchangeseller(v2.0).Alert[]} items The alerts returned in this list response.
* @property {string} kind Kind of list this is, in this case adexchangeseller#alerts.
*/
/**
* @typedef CustomChannel
* @memberOf! adexchangeseller(v2.0)
* @type object
* @property {string} code Code of this custom channel, not necessarily unique across ad clients.
* @property {string} id Unique identifier of this custom channel. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.
* @property {string} kind Kind of resource this is, in this case adexchangeseller#customChannel.
* @property {string} name Name of this custom channel.
* @property {object} targetingInfo The targeting information of this custom channel, if activated.
*/
/**
* @typedef CustomChannels
* @memberOf! adexchangeseller(v2.0)
* @type object
* @property {string} etag ETag of this response for caching purposes.
* @property {adexchangeseller(v2.0).CustomChannel[]} items The custom channels returned in this list response.
* @property {string} kind Kind of list this is, in this case adexchangeseller#customChannels.
* @property {string} nextPageToken Continuation token used to page through custom channels. To retrieve the next page of results, set the next request's "pageToken" value to this.
*/
/**
* @typedef Metadata
* @memberOf! adexchangeseller(v2.0)
* @type object
* @property {adexchangeseller(v2.0).ReportingMetadataEntry[]} items
* @property {string} kind Kind of list this is, in this case adexchangeseller#metadata.
*/
/**
* @typedef PreferredDeal
* @memberOf! adexchangeseller(v2.0)
* @type object
* @property {string} advertiserName The name of the advertiser this deal is for.
* @property {string} buyerNetworkName The name of the buyer network this deal is for.
* @property {string} currencyCode The currency code that applies to the fixed_cpm value. If not set then assumed to be USD.
* @property {string} endTime Time when this deal stops being active in seconds since the epoch (GMT). If not set then this deal is valid until manually disabled by the publisher.
* @property {string} fixedCpm The fixed price for this preferred deal. In cpm micros of currency according to currencyCode. If set, then this preferred deal is eligible for the fixed price tier of buying (highest priority, pay exactly the configured fixed price).
* @property {string} id Unique identifier of this preferred deal.
* @property {string} kind Kind of resource this is, in this case adexchangeseller#preferredDeal.
* @property {string} startTime Time when this deal becomes active in seconds since the epoch (GMT). If not set then this deal is active immediately upon creation.
*/
/**
* @typedef PreferredDeals
* @memberOf! adexchangeseller(v2.0)
* @type object
* @property {adexchangeseller(v2.0).PreferredDeal[]} items The preferred deals returned in this list response.
* @property {string} kind Kind of list this is, in this case adexchangeseller#preferredDeals.
*/
/**
* @typedef Report
* @memberOf! adexchangeseller(v2.0)
* @type object
* @property {string[]} averages The averages of the report. This is the same length as any other row in the report; cells corresponding to dimension columns are empty.
* @property {object[]} headers The header information of the columns requested in the report. This is a list of headers; one for each dimension in the request, followed by one for each metric in the request.
* @property {string} kind Kind this is, in this case adexchangeseller#report.
* @property {array[]} rows The output rows of the report. Each row is a list of cells; one for each dimension in the request, followed by one for each metric in the request. The dimension cells contain strings, and the metric cells contain numbers.
* @property {string} totalMatchedRows The total number of rows matched by the report request. Fewer rows may be returned in the response due to being limited by the row count requested or the report row limit.
* @property {string[]} totals The totals of the report. This is the same length as any other row in the report; cells corresponding to dimension columns are empty.
* @property {string[]} warnings Any warnings associated with generation of the report.
*/
/**
* @typedef ReportingMetadataEntry
* @memberOf! adexchangeseller(v2.0)
* @type object
* @property {string[]} compatibleDimensions For metrics this is a list of dimension IDs which the metric is compatible with, for dimensions it is a list of compatibility groups the dimension belongs to.
* @property {string[]} compatibleMetrics The names of the metrics the dimension or metric this reporting metadata entry describes is compatible with.
* @property {string} id Unique identifier of this reporting metadata entry, corresponding to the name of the appropriate dimension or metric.
* @property {string} kind Kind of resource this is, in this case adexchangeseller#reportingMetadataEntry.
* @property {string[]} requiredDimensions The names of the dimensions which the dimension or metric this reporting metadata entry describes requires to also be present in order for the report to be valid. Omitting these will not cause an error or warning, but may result in data which cannot be correctly interpreted.
* @property {string[]} requiredMetrics The names of the metrics which the dimension or metric this reporting metadata entry describes requires to also be present in order for the report to be valid. Omitting these will not cause an error or warning, but may result in data which cannot be correctly interpreted.
* @property {string[]} supportedProducts The codes of the projects supported by the dimension or metric this reporting metadata entry describes.
*/
/**
* @typedef SavedReport
* @memberOf! adexchangeseller(v2.0)
* @type object
* @property {string} id Unique identifier of this saved report.
* @property {string} kind Kind of resource this is, in this case adexchangeseller#savedReport.
* @property {string} name This saved report's name.
*/
/**
* @typedef SavedReports
* @memberOf! adexchangeseller(v2.0)
* @type object
* @property {string} etag ETag of this response for caching purposes.
* @property {adexchangeseller(v2.0).SavedReport[]} items The saved reports returned in this list response.
* @property {string} kind Kind of list this is, in this case adexchangeseller#savedReports.
* @property {string} nextPageToken Continuation token used to page through saved reports. To retrieve the next page of results, set the next request's "pageToken" value to this.
*/
/**
* @typedef UrlChannel
* @memberOf! adexchangeseller(v2.0)
* @type object
* @property {string} id Unique identifier of this URL channel. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.
* @property {string} kind Kind of resource this is, in this case adexchangeseller#urlChannel.
* @property {string} urlPattern URL Pattern of this URL channel. Does not include "http://" or "https://". Example: www.example.com/home
*/
/**
* @typedef UrlChannels
* @memberOf! adexchangeseller(v2.0)
* @type object
* @property {string} etag ETag of this response for caching purposes.
* @property {adexchangeseller(v2.0).UrlChannel[]} items The URL channels returned in this list response.
* @property {string} kind Kind of list this is, in this case adexchangeseller#urlChannels.
* @property {string} nextPageToken Continuation token used to page through URL channels. To retrieve the next page of results, set the next request's "pageToken" value to this.
*/
module.exports = Adexchangeseller;
|
| File | Statements | Branches | Functions | Lines | |||||
|---|---|---|---|---|---|---|---|---|---|
| datatransfer_v1.js | 10.53% | (4 / 38) | 0% | (0 / 22) | 0% | (0 / 6) | 10.53% | (4 / 38) | |
| directory_v1.js | 0.67% | (4 / 601) | 0% | (0 / 386) | 0% | (0 / 97) | 0.67% | (4 / 601) | |
| reports_v1.js | 10% | (4 / 40) | 0% | (0 / 22) | 0% | (0 / 6) | 10% | (4 / 40) |
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* Admin Data Transfer API
*
* Transfers user data from one user to another.
*
* @example
* var google = require('googleapis');
* var admin = google.admin('datatransfer_v1');
*
* @namespace admin
* @type {Function}
* @version datatransfer_v1
* @variation datatransfer_v1
* @param {object=} options Options for Admin
*/
function Admin(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.applications = {
/**
* datatransfer.applications.get
*
* @desc Retrieves information about an application for the given application ID.
*
* @alias datatransfer.applications.get
* @memberOf! admin(datatransfer_v1)
*
* @param {object} params Parameters for request
* @param {string} params.applicationId ID of the application resource to be retrieved.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/datatransfer/v1/applications/{applicationId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['applicationId'],
pathParams: ['applicationId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* datatransfer.applications.list
*
* @desc Lists the applications available for data transfer for a customer.
*
* @alias datatransfer.applications.list
* @memberOf! admin(datatransfer_v1)
*
* @param {object=} params Parameters for request
* @param {string=} params.customerId Immutable ID of the Google Apps account.
* @param {integer=} params.maxResults Maximum number of results to return. Default is 100.
* @param {string=} params.pageToken Token to specify next page in the list.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/datatransfer/v1/applications',
method: 'GET'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.transfers = {
/**
* datatransfer.transfers.get
*
* @desc Retrieves a data transfer request by its resource ID.
*
* @alias datatransfer.transfers.get
* @memberOf! admin(datatransfer_v1)
*
* @param {object} params Parameters for request
* @param {string} params.dataTransferId ID of the resource to be retrieved. This is returned in the response from the insert method.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/datatransfer/v1/transfers/{dataTransferId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['dataTransferId'],
pathParams: ['dataTransferId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* datatransfer.transfers.insert
*
* @desc Inserts a data transfer request.
*
* @alias datatransfer.transfers.insert
* @memberOf! admin(datatransfer_v1)
*
* @param {object} params Parameters for request
* @param {admin(datatransfer_v1).DataTransfer} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/datatransfer/v1/transfers',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* datatransfer.transfers.list
*
* @desc Lists the transfers for a customer by source user, destination user, or status.
*
* @alias datatransfer.transfers.list
* @memberOf! admin(datatransfer_v1)
*
* @param {object=} params Parameters for request
* @param {string=} params.customerId Immutable ID of the Google Apps account.
* @param {integer=} params.maxResults Maximum number of results to return. Default is 100.
* @param {string=} params.newOwnerUserId Destination user's profile ID.
* @param {string=} params.oldOwnerUserId Source user's profile ID.
* @param {string=} params.pageToken Token to specify the next page in the list.
* @param {string=} params.status Status of the transfer.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/datatransfer/v1/transfers',
method: 'GET'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
};
}
/**
* @typedef Application
* @memberOf! admin(datatransfer_v1)
* @type object
* @property {string} etag Etag of the resource.
* @property {string} id The application's ID.
* @property {string} kind Identifies the resource as a DataTransfer Application Resource.
* @property {string} name The application's name.
* @property {admin(datatransfer_v1).ApplicationTransferParam[]} transferParams The list of all possible transfer parameters for this application. These parameters can be used to select the data of the user in this application to be transfered.
*/
/**
* @typedef ApplicationDataTransfer
* @memberOf! admin(datatransfer_v1)
* @type object
* @property {string} applicationId The application's ID.
* @property {admin(datatransfer_v1).ApplicationTransferParam[]} applicationTransferParams The transfer parameters for the application. These parameters are used to select the data which will get transfered in context of this application.
* @property {string} applicationTransferStatus Current status of transfer for this application. (Read-only)
*/
/**
* @typedef ApplicationTransferParam
* @memberOf! admin(datatransfer_v1)
* @type object
* @property {string} key The type of the transfer parameter. eg: 'PRIVACY_LEVEL'
* @property {string[]} value The value of the coressponding transfer parameter. eg: 'PRIVATE' or 'SHARED'
*/
/**
* @typedef ApplicationsListResponse
* @memberOf! admin(datatransfer_v1)
* @type object
* @property {admin(datatransfer_v1).Application[]} applications List of applications that support data transfer and are also installed for the customer.
* @property {string} etag ETag of the resource.
* @property {string} kind Identifies the resource as a collection of Applications.
* @property {string} nextPageToken Continuation token which will be used to specify next page in list API.
*/
/**
* @typedef DataTransfer
* @memberOf! admin(datatransfer_v1)
* @type object
* @property {admin(datatransfer_v1).ApplicationDataTransfer[]} applicationDataTransfers List of per application data transfer resources. It contains data transfer details of the applications associated with this transfer resource. Note that this list is also used to specify the applications for which data transfer has to be done at the time of the transfer resource creation.
* @property {string} etag ETag of the resource.
* @property {string} id The transfer's ID (Read-only).
* @property {string} kind Identifies the resource as a DataTransfer request.
* @property {string} newOwnerUserId ID of the user to whom the data is being transfered.
* @property {string} oldOwnerUserId ID of the user whose data is being transfered.
* @property {string} overallTransferStatusCode Overall transfer status (Read-only).
* @property {string} requestTime The time at which the data transfer was requested (Read-only).
*/
/**
* @typedef DataTransfersListResponse
* @memberOf! admin(datatransfer_v1)
* @type object
* @property {admin(datatransfer_v1).DataTransfer[]} dataTransfers List of data transfer requests.
* @property {string} etag ETag of the resource.
* @property {string} kind Identifies the resource as a collection of data transfer requests.
* @property {string} nextPageToken Continuation token which will be used to specify next page in list API.
*/
module.exports = Admin;
|
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 1791 1792 1793 1794 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822 1823 1824 1825 1826 1827 1828 1829 1830 1831 1832 1833 1834 1835 1836 1837 1838 1839 1840 1841 1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853 1854 1855 1856 1857 1858 1859 1860 1861 1862 1863 1864 1865 1866 1867 1868 1869 1870 1871 1872 1873 1874 1875 1876 1877 1878 1879 1880 1881 1882 1883 1884 1885 1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896 1897 1898 1899 1900 1901 1902 1903 1904 1905 1906 1907 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 1939 1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 2026 2027 2028 2029 2030 2031 2032 2033 2034 2035 2036 2037 2038 2039 2040 2041 2042 2043 2044 2045 2046 2047 2048 2049 2050 2051 2052 2053 2054 2055 2056 2057 2058 2059 2060 2061 2062 2063 2064 2065 2066 2067 2068 2069 2070 2071 2072 2073 2074 2075 2076 2077 2078 2079 2080 2081 2082 2083 2084 2085 2086 2087 2088 2089 2090 2091 2092 2093 2094 2095 2096 2097 2098 2099 2100 2101 2102 2103 2104 2105 2106 2107 2108 2109 2110 2111 2112 2113 2114 2115 2116 2117 2118 2119 2120 2121 2122 2123 2124 2125 2126 2127 2128 2129 2130 2131 2132 2133 2134 2135 2136 2137 2138 2139 2140 2141 2142 2143 2144 2145 2146 2147 2148 2149 2150 2151 2152 2153 2154 2155 2156 2157 2158 2159 2160 2161 2162 2163 2164 2165 2166 2167 2168 2169 2170 2171 2172 2173 2174 2175 2176 2177 2178 2179 2180 2181 2182 2183 2184 2185 2186 2187 2188 2189 2190 2191 2192 2193 2194 2195 2196 2197 2198 2199 2200 2201 2202 2203 2204 2205 2206 2207 2208 2209 2210 2211 2212 2213 2214 2215 2216 2217 2218 2219 2220 2221 2222 2223 2224 2225 2226 2227 2228 2229 2230 2231 2232 2233 2234 2235 2236 2237 2238 2239 2240 2241 2242 2243 2244 2245 2246 2247 2248 2249 2250 2251 2252 2253 2254 2255 2256 2257 2258 2259 2260 2261 2262 2263 2264 2265 2266 2267 2268 2269 2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 2280 2281 2282 2283 2284 2285 2286 2287 2288 2289 2290 2291 2292 2293 2294 2295 2296 2297 2298 2299 2300 2301 2302 2303 2304 2305 2306 2307 2308 2309 2310 2311 2312 2313 2314 2315 2316 2317 2318 2319 2320 2321 2322 2323 2324 2325 2326 2327 2328 2329 2330 2331 2332 2333 2334 2335 2336 2337 2338 2339 2340 2341 2342 2343 2344 2345 2346 2347 2348 2349 2350 2351 2352 2353 2354 2355 2356 2357 2358 2359 2360 2361 2362 2363 2364 2365 2366 2367 2368 2369 2370 2371 2372 2373 2374 2375 2376 2377 2378 2379 2380 2381 2382 2383 2384 2385 2386 2387 2388 2389 2390 2391 2392 2393 2394 2395 2396 2397 2398 2399 2400 2401 2402 2403 2404 2405 2406 2407 2408 2409 2410 2411 2412 2413 2414 2415 2416 2417 2418 2419 2420 2421 2422 2423 2424 2425 2426 2427 2428 2429 2430 2431 2432 2433 2434 2435 2436 2437 2438 2439 2440 2441 2442 2443 2444 2445 2446 2447 2448 2449 2450 2451 2452 2453 2454 2455 2456 2457 2458 2459 2460 2461 2462 2463 2464 2465 2466 2467 2468 2469 2470 2471 2472 2473 2474 2475 2476 2477 2478 2479 2480 2481 2482 2483 2484 2485 2486 2487 2488 2489 2490 2491 2492 2493 2494 2495 2496 2497 2498 2499 2500 2501 2502 2503 2504 2505 2506 2507 2508 2509 2510 2511 2512 2513 2514 2515 2516 2517 2518 2519 2520 2521 2522 2523 2524 2525 2526 2527 2528 2529 2530 2531 2532 2533 2534 2535 2536 2537 2538 2539 2540 2541 2542 2543 2544 2545 2546 2547 2548 2549 2550 2551 2552 2553 2554 2555 2556 2557 2558 2559 2560 2561 2562 2563 2564 2565 2566 2567 2568 2569 2570 2571 2572 2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 2730 2731 2732 2733 2734 2735 2736 2737 2738 2739 2740 2741 2742 2743 2744 2745 2746 2747 2748 2749 2750 2751 2752 2753 2754 2755 2756 2757 2758 2759 2760 2761 2762 2763 2764 2765 2766 2767 2768 2769 2770 2771 2772 2773 2774 2775 2776 2777 2778 2779 2780 2781 2782 2783 2784 2785 2786 2787 2788 2789 2790 2791 2792 2793 2794 2795 2796 2797 2798 2799 2800 2801 2802 2803 2804 2805 2806 2807 2808 2809 2810 2811 2812 2813 2814 2815 2816 2817 2818 2819 2820 2821 2822 2823 2824 2825 2826 2827 2828 2829 2830 2831 2832 2833 2834 2835 2836 2837 2838 2839 2840 2841 2842 2843 2844 2845 2846 2847 2848 2849 2850 2851 2852 2853 2854 2855 2856 2857 2858 2859 2860 2861 2862 2863 2864 2865 2866 2867 2868 2869 2870 2871 2872 2873 2874 2875 2876 2877 2878 2879 2880 2881 2882 2883 2884 2885 2886 2887 2888 2889 2890 2891 2892 2893 2894 2895 2896 2897 2898 2899 2900 2901 2902 2903 2904 2905 2906 2907 2908 2909 2910 2911 2912 2913 2914 2915 2916 2917 2918 2919 2920 2921 2922 2923 2924 2925 2926 2927 2928 2929 2930 2931 2932 2933 2934 2935 2936 2937 2938 2939 2940 2941 2942 2943 2944 2945 2946 2947 2948 2949 2950 2951 2952 2953 2954 2955 2956 2957 2958 2959 2960 2961 2962 2963 2964 2965 2966 2967 2968 2969 2970 2971 2972 2973 2974 2975 2976 2977 2978 2979 2980 2981 2982 2983 2984 2985 2986 2987 2988 2989 2990 2991 2992 2993 2994 2995 2996 2997 2998 2999 3000 3001 3002 3003 3004 3005 3006 3007 3008 3009 3010 3011 3012 3013 3014 3015 3016 3017 3018 3019 3020 3021 3022 3023 3024 3025 3026 3027 3028 3029 3030 3031 3032 3033 3034 3035 3036 3037 3038 3039 3040 3041 3042 3043 3044 3045 3046 3047 3048 3049 3050 3051 3052 3053 3054 3055 3056 3057 3058 3059 3060 3061 3062 3063 3064 3065 3066 3067 3068 3069 3070 3071 3072 3073 3074 3075 3076 3077 3078 3079 3080 3081 3082 3083 3084 3085 3086 3087 3088 3089 3090 3091 3092 3093 3094 3095 3096 3097 3098 3099 3100 3101 3102 3103 3104 3105 3106 3107 3108 3109 3110 3111 3112 3113 3114 3115 3116 3117 3118 3119 3120 3121 3122 3123 3124 3125 3126 3127 3128 3129 3130 3131 3132 3133 3134 3135 3136 3137 3138 3139 3140 3141 3142 3143 3144 3145 3146 3147 3148 3149 3150 3151 3152 3153 3154 3155 3156 3157 3158 3159 3160 3161 3162 3163 3164 3165 3166 3167 3168 3169 3170 3171 3172 3173 3174 3175 3176 3177 3178 3179 3180 3181 3182 3183 3184 3185 3186 3187 3188 3189 3190 3191 3192 3193 3194 3195 3196 3197 3198 3199 3200 3201 3202 3203 3204 3205 3206 3207 3208 3209 3210 3211 3212 3213 3214 3215 3216 3217 3218 3219 3220 3221 3222 3223 3224 3225 3226 3227 3228 3229 3230 3231 3232 3233 3234 3235 3236 3237 3238 3239 3240 3241 3242 3243 3244 3245 3246 3247 3248 3249 3250 3251 3252 3253 3254 3255 3256 3257 3258 3259 3260 3261 3262 3263 3264 3265 3266 3267 3268 3269 3270 3271 3272 3273 3274 3275 3276 3277 3278 3279 3280 3281 3282 3283 3284 3285 3286 3287 3288 3289 3290 3291 3292 3293 3294 3295 3296 3297 3298 3299 3300 3301 3302 3303 3304 3305 3306 3307 3308 3309 3310 3311 3312 3313 3314 3315 3316 3317 3318 3319 3320 3321 3322 3323 3324 3325 3326 3327 3328 3329 3330 3331 3332 3333 3334 3335 3336 3337 3338 3339 3340 3341 3342 3343 3344 3345 3346 3347 3348 3349 3350 3351 3352 3353 3354 3355 3356 3357 3358 3359 3360 3361 3362 3363 3364 3365 3366 3367 3368 3369 3370 3371 3372 3373 3374 3375 3376 3377 3378 3379 3380 3381 3382 3383 3384 3385 3386 3387 3388 3389 3390 3391 3392 3393 3394 3395 3396 3397 3398 3399 3400 3401 3402 3403 3404 3405 3406 3407 3408 3409 3410 3411 3412 3413 3414 3415 3416 3417 3418 3419 3420 3421 3422 3423 3424 3425 3426 3427 3428 3429 3430 3431 3432 3433 3434 3435 3436 3437 3438 3439 3440 3441 3442 3443 3444 3445 3446 3447 3448 3449 3450 3451 3452 3453 3454 3455 3456 3457 3458 3459 3460 3461 3462 3463 3464 3465 3466 3467 3468 3469 3470 3471 3472 3473 3474 3475 3476 3477 3478 3479 3480 3481 3482 3483 3484 3485 3486 3487 3488 3489 3490 3491 3492 3493 3494 3495 3496 3497 3498 3499 3500 3501 3502 3503 3504 3505 3506 3507 3508 3509 3510 3511 3512 3513 3514 3515 3516 3517 3518 3519 3520 3521 3522 3523 3524 3525 3526 3527 3528 3529 3530 3531 3532 3533 3534 3535 3536 3537 3538 3539 3540 3541 3542 3543 3544 3545 3546 3547 3548 3549 3550 3551 3552 3553 3554 3555 3556 3557 3558 3559 3560 3561 3562 3563 3564 3565 3566 3567 3568 3569 3570 3571 3572 3573 3574 3575 3576 3577 3578 3579 3580 3581 3582 3583 3584 3585 3586 3587 3588 3589 3590 3591 3592 3593 3594 3595 3596 3597 3598 3599 3600 3601 3602 3603 3604 3605 3606 3607 3608 3609 3610 3611 3612 3613 3614 3615 3616 3617 3618 3619 3620 3621 3622 3623 3624 3625 3626 3627 3628 3629 3630 3631 3632 3633 3634 3635 3636 3637 3638 3639 3640 3641 3642 3643 3644 3645 3646 3647 3648 3649 3650 3651 3652 3653 3654 3655 3656 3657 3658 3659 3660 3661 3662 3663 3664 3665 3666 3667 3668 3669 3670 3671 3672 3673 3674 3675 3676 3677 3678 3679 3680 3681 3682 3683 3684 3685 3686 3687 3688 3689 3690 3691 3692 3693 3694 3695 3696 3697 3698 3699 3700 3701 3702 3703 3704 3705 3706 3707 3708 3709 3710 3711 3712 3713 3714 3715 3716 3717 3718 3719 3720 3721 3722 3723 3724 3725 3726 3727 3728 3729 3730 3731 3732 3733 3734 3735 3736 3737 3738 3739 3740 3741 3742 3743 3744 3745 3746 3747 3748 3749 3750 3751 3752 3753 3754 3755 3756 3757 3758 3759 3760 3761 3762 3763 3764 3765 3766 3767 3768 3769 3770 3771 3772 3773 3774 3775 3776 3777 3778 3779 3780 3781 3782 3783 3784 3785 3786 3787 3788 3789 3790 3791 3792 3793 3794 3795 3796 3797 3798 3799 3800 3801 3802 3803 3804 3805 3806 3807 3808 3809 3810 3811 3812 3813 3814 3815 3816 3817 3818 3819 3820 3821 3822 3823 3824 3825 3826 3827 3828 3829 3830 3831 3832 3833 3834 3835 3836 3837 3838 3839 3840 3841 3842 3843 3844 3845 3846 3847 3848 3849 3850 3851 3852 3853 3854 3855 3856 3857 3858 3859 3860 3861 3862 3863 3864 3865 3866 3867 3868 3869 3870 3871 3872 3873 3874 3875 3876 3877 3878 3879 3880 3881 3882 3883 3884 3885 3886 3887 3888 3889 3890 3891 3892 3893 3894 3895 3896 3897 3898 3899 3900 3901 3902 3903 3904 3905 3906 3907 3908 3909 3910 3911 3912 3913 3914 3915 3916 3917 3918 3919 3920 3921 3922 3923 3924 3925 3926 3927 3928 3929 3930 3931 3932 3933 3934 3935 3936 3937 3938 3939 3940 3941 3942 3943 3944 3945 3946 3947 3948 3949 3950 3951 3952 3953 3954 3955 3956 3957 3958 3959 3960 3961 3962 3963 3964 3965 3966 3967 3968 3969 3970 3971 3972 3973 3974 3975 3976 3977 3978 3979 3980 3981 3982 3983 3984 3985 3986 3987 3988 3989 3990 3991 3992 3993 3994 3995 3996 3997 3998 3999 4000 4001 4002 4003 4004 4005 4006 4007 4008 4009 4010 4011 4012 4013 4014 4015 4016 4017 4018 4019 4020 4021 4022 4023 4024 4025 4026 4027 4028 4029 4030 4031 4032 4033 4034 4035 4036 4037 4038 4039 4040 4041 4042 4043 4044 4045 4046 4047 4048 4049 4050 4051 4052 4053 4054 4055 4056 4057 4058 4059 4060 4061 4062 4063 4064 4065 4066 4067 4068 4069 4070 4071 4072 4073 4074 4075 4076 4077 4078 4079 4080 4081 4082 4083 4084 4085 4086 4087 4088 4089 4090 4091 4092 4093 4094 4095 4096 4097 4098 4099 4100 4101 4102 4103 4104 4105 4106 4107 4108 4109 4110 4111 4112 4113 4114 4115 4116 4117 4118 4119 4120 4121 4122 4123 4124 4125 4126 4127 4128 4129 4130 4131 4132 4133 4134 4135 4136 4137 4138 4139 4140 4141 4142 4143 4144 4145 4146 4147 4148 4149 4150 4151 4152 4153 4154 4155 4156 4157 4158 4159 4160 4161 4162 4163 4164 4165 4166 4167 4168 4169 4170 4171 4172 4173 4174 4175 4176 4177 4178 4179 4180 4181 4182 4183 4184 4185 4186 4187 4188 4189 4190 4191 4192 4193 4194 4195 4196 4197 4198 4199 4200 4201 4202 4203 4204 4205 4206 4207 4208 4209 4210 4211 4212 4213 4214 4215 4216 4217 4218 4219 4220 4221 4222 4223 4224 4225 4226 4227 4228 4229 4230 4231 4232 4233 4234 4235 4236 4237 4238 4239 4240 4241 4242 4243 4244 4245 4246 4247 4248 4249 4250 4251 4252 4253 4254 4255 4256 4257 4258 4259 4260 4261 4262 4263 4264 4265 4266 4267 4268 4269 4270 4271 4272 4273 4274 4275 4276 4277 4278 4279 4280 4281 4282 4283 4284 4285 4286 4287 4288 4289 4290 4291 4292 4293 4294 4295 4296 4297 4298 4299 4300 4301 4302 4303 4304 4305 4306 4307 4308 4309 4310 4311 4312 4313 4314 4315 4316 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* Admin Directory API
*
* The Admin SDK Directory API lets you view and manage enterprise resources such as users and groups, administrative notifications, security features, and more.
*
* @example
* var google = require('googleapis');
* var admin = google.admin('directory_v1');
*
* @namespace admin
* @type {Function}
* @version directory_v1
* @variation directory_v1
* @param {object=} options Options for Admin
*/
function Admin(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.asps = {
/**
* directory.asps.delete
*
* @desc Delete an ASP issued by a user.
*
* @alias directory.asps.delete
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {integer} params.codeId The unique ID of the ASP to be deleted.
* @param {string} params.userKey Identifies the user in the API request. The value can be the user's primary email address, alias email address, or unique user ID.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/users/{userKey}/asps/{codeId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['userKey', 'codeId'],
pathParams: ['codeId', 'userKey'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.asps.get
*
* @desc Get information about an ASP issued by a user.
*
* @alias directory.asps.get
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {integer} params.codeId The unique ID of the ASP.
* @param {string} params.userKey Identifies the user in the API request. The value can be the user's primary email address, alias email address, or unique user ID.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/users/{userKey}/asps/{codeId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['userKey', 'codeId'],
pathParams: ['codeId', 'userKey'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.asps.list
*
* @desc List the ASPs issued by a user.
*
* @alias directory.asps.list
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.userKey Identifies the user in the API request. The value can be the user's primary email address, alias email address, or unique user ID.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/users/{userKey}/asps',
method: 'GET'
}, options),
params: params,
requiredParams: ['userKey'],
pathParams: ['userKey'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.channels = {
/**
* admin.channels.stop
*
* @desc Stop watching resources through this channel
*
* @alias admin.channels.stop
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {admin(directory_v1).Channel} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
stop: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/admin/directory_v1/channels/stop',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.chromeosdevices = {
/**
* directory.chromeosdevices.action
*
* @desc Take action on Chrome OS Device
*
* @alias directory.chromeosdevices.action
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customerId Immutable id of the Google Apps account
* @param {string} params.resourceId Immutable id of Chrome OS Device
* @param {admin(directory_v1).ChromeOsDeviceAction} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
action: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customerId}/devices/chromeos/{resourceId}/action',
method: 'POST'
}, options),
params: params,
requiredParams: ['customerId', 'resourceId'],
pathParams: ['customerId', 'resourceId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.chromeosdevices.get
*
* @desc Retrieve Chrome OS Device
*
* @alias directory.chromeosdevices.get
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customerId Immutable id of the Google Apps account
* @param {string} params.deviceId Immutable id of Chrome OS Device
* @param {string=} params.projection Restrict information returned to a set of selected fields.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customerId}/devices/chromeos/{deviceId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['customerId', 'deviceId'],
pathParams: ['customerId', 'deviceId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.chromeosdevices.list
*
* @desc Retrieve all Chrome OS Devices of a customer (paginated)
*
* @alias directory.chromeosdevices.list
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customerId Immutable id of the Google Apps account
* @param {integer=} params.maxResults Maximum number of results to return. Default is 100
* @param {string=} params.orderBy Column to use for sorting results
* @param {string=} params.pageToken Token to specify next page in the list
* @param {string=} params.projection Restrict information returned to a set of selected fields.
* @param {string=} params.query Search string in the format given at http://support.google.com/chromeos/a/bin/answer.py?hl=en&answer=1698333
* @param {string=} params.sortOrder Whether to return results in ascending or descending order. Only of use when orderBy is also used
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customerId}/devices/chromeos',
method: 'GET'
}, options),
params: params,
requiredParams: ['customerId'],
pathParams: ['customerId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.chromeosdevices.patch
*
* @desc Update Chrome OS Device. This method supports patch semantics.
*
* @alias directory.chromeosdevices.patch
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customerId Immutable id of the Google Apps account
* @param {string} params.deviceId Immutable id of Chrome OS Device
* @param {string=} params.projection Restrict information returned to a set of selected fields.
* @param {admin(directory_v1).ChromeOsDevice} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customerId}/devices/chromeos/{deviceId}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['customerId', 'deviceId'],
pathParams: ['customerId', 'deviceId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.chromeosdevices.update
*
* @desc Update Chrome OS Device
*
* @alias directory.chromeosdevices.update
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customerId Immutable id of the Google Apps account
* @param {string} params.deviceId Immutable id of Chrome OS Device
* @param {string=} params.projection Restrict information returned to a set of selected fields.
* @param {admin(directory_v1).ChromeOsDevice} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customerId}/devices/chromeos/{deviceId}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['customerId', 'deviceId'],
pathParams: ['customerId', 'deviceId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.customers = {
/**
* directory.customers.get
*
* @desc Retrieves a customer.
*
* @alias directory.customers.get
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customerKey Id of the customer to be retrieved
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customers/{customerKey}',
method: 'GET'
}, options),
params: params,
requiredParams: ['customerKey'],
pathParams: ['customerKey'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.customers.patch
*
* @desc Updates a customer. This method supports patch semantics.
*
* @alias directory.customers.patch
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customerKey Id of the customer to be updated
* @param {admin(directory_v1).Customer} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customers/{customerKey}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['customerKey'],
pathParams: ['customerKey'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.customers.update
*
* @desc Updates a customer.
*
* @alias directory.customers.update
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customerKey Id of the customer to be updated
* @param {admin(directory_v1).Customer} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customers/{customerKey}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['customerKey'],
pathParams: ['customerKey'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.domainAliases = {
/**
* directory.domainAliases.delete
*
* @desc Deletes a Domain Alias of the customer.
*
* @alias directory.domainAliases.delete
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customer Immutable id of the Google Apps account.
* @param {string} params.domainAliasName Name of domain alias to be retrieved.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customer}/domainaliases/{domainAliasName}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['customer', 'domainAliasName'],
pathParams: ['customer', 'domainAliasName'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.domainAliases.get
*
* @desc Retrieves a domain alias of the customer.
*
* @alias directory.domainAliases.get
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customer Immutable id of the Google Apps account.
* @param {string} params.domainAliasName Name of domain alias to be retrieved.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customer}/domainaliases/{domainAliasName}',
method: 'GET'
}, options),
params: params,
requiredParams: ['customer', 'domainAliasName'],
pathParams: ['customer', 'domainAliasName'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.domainAliases.insert
*
* @desc Inserts a Domain alias of the customer.
*
* @alias directory.domainAliases.insert
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customer Immutable id of the Google Apps account.
* @param {admin(directory_v1).DomainAlias} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customer}/domainaliases',
method: 'POST'
}, options),
params: params,
requiredParams: ['customer'],
pathParams: ['customer'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.domainAliases.list
*
* @desc Lists the domain aliases of the customer.
*
* @alias directory.domainAliases.list
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customer Immutable id of the Google Apps account.
* @param {string=} params.parentDomainName Name of the parent domain for which domain aliases are to be fetched.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customer}/domainaliases',
method: 'GET'
}, options),
params: params,
requiredParams: ['customer'],
pathParams: ['customer'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.domains = {
/**
* directory.domains.delete
*
* @desc Deletes a domain of the customer.
*
* @alias directory.domains.delete
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customer Immutable id of the Google Apps account.
* @param {string} params.domainName Name of domain to be deleted
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customer}/domains/{domainName}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['customer', 'domainName'],
pathParams: ['customer', 'domainName'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.domains.get
*
* @desc Retrieves a domain of the customer.
*
* @alias directory.domains.get
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customer Immutable id of the Google Apps account.
* @param {string} params.domainName Name of domain to be retrieved
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customer}/domains/{domainName}',
method: 'GET'
}, options),
params: params,
requiredParams: ['customer', 'domainName'],
pathParams: ['customer', 'domainName'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.domains.insert
*
* @desc Inserts a domain of the customer.
*
* @alias directory.domains.insert
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customer Immutable id of the Google Apps account.
* @param {admin(directory_v1).Domains} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customer}/domains',
method: 'POST'
}, options),
params: params,
requiredParams: ['customer'],
pathParams: ['customer'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.domains.list
*
* @desc Lists the domains of the customer.
*
* @alias directory.domains.list
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customer Immutable id of the Google Apps account.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customer}/domains',
method: 'GET'
}, options),
params: params,
requiredParams: ['customer'],
pathParams: ['customer'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.groups = {
/**
* directory.groups.delete
*
* @desc Delete Group
*
* @alias directory.groups.delete
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.groupKey Email or immutable Id of the group
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/groups/{groupKey}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['groupKey'],
pathParams: ['groupKey'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.groups.get
*
* @desc Retrieve Group
*
* @alias directory.groups.get
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.groupKey Email or immutable Id of the group
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/groups/{groupKey}',
method: 'GET'
}, options),
params: params,
requiredParams: ['groupKey'],
pathParams: ['groupKey'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.groups.insert
*
* @desc Create Group
*
* @alias directory.groups.insert
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {admin(directory_v1).Group} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/groups',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.groups.list
*
* @desc Retrieve all groups in a domain (paginated)
*
* @alias directory.groups.list
* @memberOf! admin(directory_v1)
*
* @param {object=} params Parameters for request
* @param {string=} params.customer Immutable id of the Google Apps account. In case of multi-domain, to fetch all groups for a customer, fill this field instead of domain.
* @param {string=} params.domain Name of the domain. Fill this field to get groups from only this domain. To return all groups in a multi-domain fill customer field instead.
* @param {integer=} params.maxResults Maximum number of results to return. Default is 200
* @param {string=} params.pageToken Token to specify next page in the list
* @param {string=} params.userKey Email or immutable Id of the user if only those groups are to be listed, the given user is a member of. If Id, it should match with id of user object
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/groups',
method: 'GET'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.groups.patch
*
* @desc Update Group. This method supports patch semantics.
*
* @alias directory.groups.patch
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.groupKey Email or immutable Id of the group. If Id, it should match with id of group object
* @param {admin(directory_v1).Group} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/groups/{groupKey}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['groupKey'],
pathParams: ['groupKey'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.groups.update
*
* @desc Update Group
*
* @alias directory.groups.update
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.groupKey Email or immutable Id of the group. If Id, it should match with id of group object
* @param {admin(directory_v1).Group} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/groups/{groupKey}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['groupKey'],
pathParams: ['groupKey'],
context: self
};
return createAPIRequest(parameters, callback);
},
aliases: {
/**
* directory.groups.aliases.delete
*
* @desc Remove a alias for the group
*
* @alias directory.groups.aliases.delete
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.alias The alias to be removed
* @param {string} params.groupKey Email or immutable Id of the group
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/groups/{groupKey}/aliases/{alias}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['groupKey', 'alias'],
pathParams: ['alias', 'groupKey'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.groups.aliases.insert
*
* @desc Add a alias for the group
*
* @alias directory.groups.aliases.insert
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.groupKey Email or immutable Id of the group
* @param {admin(directory_v1).Alias} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/groups/{groupKey}/aliases',
method: 'POST'
}, options),
params: params,
requiredParams: ['groupKey'],
pathParams: ['groupKey'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.groups.aliases.list
*
* @desc List all aliases for a group
*
* @alias directory.groups.aliases.list
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.groupKey Email or immutable Id of the group
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/groups/{groupKey}/aliases',
method: 'GET'
}, options),
params: params,
requiredParams: ['groupKey'],
pathParams: ['groupKey'],
context: self
};
return createAPIRequest(parameters, callback);
}
}
};
self.members = {
/**
* directory.members.delete
*
* @desc Remove membership.
*
* @alias directory.members.delete
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.groupKey Email or immutable Id of the group
* @param {string} params.memberKey Email or immutable Id of the member
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/groups/{groupKey}/members/{memberKey}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['groupKey', 'memberKey'],
pathParams: ['groupKey', 'memberKey'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.members.get
*
* @desc Retrieve Group Member
*
* @alias directory.members.get
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.groupKey Email or immutable Id of the group
* @param {string} params.memberKey Email or immutable Id of the member
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/groups/{groupKey}/members/{memberKey}',
method: 'GET'
}, options),
params: params,
requiredParams: ['groupKey', 'memberKey'],
pathParams: ['groupKey', 'memberKey'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.members.insert
*
* @desc Add user to the specified group.
*
* @alias directory.members.insert
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.groupKey Email or immutable Id of the group
* @param {admin(directory_v1).Member} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/groups/{groupKey}/members',
method: 'POST'
}, options),
params: params,
requiredParams: ['groupKey'],
pathParams: ['groupKey'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.members.list
*
* @desc Retrieve all members in a group (paginated)
*
* @alias directory.members.list
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.groupKey Email or immutable Id of the group
* @param {integer=} params.maxResults Maximum number of results to return. Default is 200
* @param {string=} params.pageToken Token to specify next page in the list
* @param {string=} params.roles Comma separated role values to filter list results on.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/groups/{groupKey}/members',
method: 'GET'
}, options),
params: params,
requiredParams: ['groupKey'],
pathParams: ['groupKey'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.members.patch
*
* @desc Update membership of a user in the specified group. This method supports patch semantics.
*
* @alias directory.members.patch
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.groupKey Email or immutable Id of the group. If Id, it should match with id of group object
* @param {string} params.memberKey Email or immutable Id of the user. If Id, it should match with id of member object
* @param {admin(directory_v1).Member} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/groups/{groupKey}/members/{memberKey}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['groupKey', 'memberKey'],
pathParams: ['groupKey', 'memberKey'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.members.update
*
* @desc Update membership of a user in the specified group.
*
* @alias directory.members.update
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.groupKey Email or immutable Id of the group. If Id, it should match with id of group object
* @param {string} params.memberKey Email or immutable Id of the user. If Id, it should match with id of member object
* @param {admin(directory_v1).Member} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/groups/{groupKey}/members/{memberKey}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['groupKey', 'memberKey'],
pathParams: ['groupKey', 'memberKey'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.mobiledevices = {
/**
* directory.mobiledevices.action
*
* @desc Take action on Mobile Device
*
* @alias directory.mobiledevices.action
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customerId Immutable id of the Google Apps account
* @param {string} params.resourceId Immutable id of Mobile Device
* @param {admin(directory_v1).MobileDeviceAction} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
action: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customerId}/devices/mobile/{resourceId}/action',
method: 'POST'
}, options),
params: params,
requiredParams: ['customerId', 'resourceId'],
pathParams: ['customerId', 'resourceId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.mobiledevices.delete
*
* @desc Delete Mobile Device
*
* @alias directory.mobiledevices.delete
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customerId Immutable id of the Google Apps account
* @param {string} params.resourceId Immutable id of Mobile Device
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customerId}/devices/mobile/{resourceId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['customerId', 'resourceId'],
pathParams: ['customerId', 'resourceId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.mobiledevices.get
*
* @desc Retrieve Mobile Device
*
* @alias directory.mobiledevices.get
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customerId Immutable id of the Google Apps account
* @param {string=} params.projection Restrict information returned to a set of selected fields.
* @param {string} params.resourceId Immutable id of Mobile Device
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customerId}/devices/mobile/{resourceId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['customerId', 'resourceId'],
pathParams: ['customerId', 'resourceId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.mobiledevices.list
*
* @desc Retrieve all Mobile Devices of a customer (paginated)
*
* @alias directory.mobiledevices.list
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customerId Immutable id of the Google Apps account
* @param {integer=} params.maxResults Maximum number of results to return. Default is 100
* @param {string=} params.orderBy Column to use for sorting results
* @param {string=} params.pageToken Token to specify next page in the list
* @param {string=} params.projection Restrict information returned to a set of selected fields.
* @param {string=} params.query Search string in the format given at http://support.google.com/a/bin/answer.py?hl=en&answer=1408863#search
* @param {string=} params.sortOrder Whether to return results in ascending or descending order. Only of use when orderBy is also used
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customerId}/devices/mobile',
method: 'GET'
}, options),
params: params,
requiredParams: ['customerId'],
pathParams: ['customerId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.notifications = {
/**
* directory.notifications.delete
*
* @desc Deletes a notification
*
* @alias directory.notifications.delete
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customer The unique ID for the customer's Google account. The customerId is also returned as part of the Users resource.
* @param {string} params.notificationId The unique ID of the notification.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customer}/notifications/{notificationId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['customer', 'notificationId'],
pathParams: ['customer', 'notificationId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.notifications.get
*
* @desc Retrieves a notification.
*
* @alias directory.notifications.get
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customer The unique ID for the customer's Google account. The customerId is also returned as part of the Users resource.
* @param {string} params.notificationId The unique ID of the notification.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customer}/notifications/{notificationId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['customer', 'notificationId'],
pathParams: ['customer', 'notificationId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.notifications.list
*
* @desc Retrieves a list of notifications.
*
* @alias directory.notifications.list
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customer The unique ID for the customer's Google account.
* @param {string=} params.language The ISO 639-1 code of the language notifications are returned in. The default is English (en).
* @param {integer=} params.maxResults Maximum number of notifications to return per page. The default is 100.
* @param {string=} params.pageToken The token to specify the page of results to retrieve.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customer}/notifications',
method: 'GET'
}, options),
params: params,
requiredParams: ['customer'],
pathParams: ['customer'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.notifications.patch
*
* @desc Updates a notification. This method supports patch semantics.
*
* @alias directory.notifications.patch
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customer The unique ID for the customer's Google account.
* @param {string} params.notificationId The unique ID of the notification.
* @param {admin(directory_v1).Notification} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customer}/notifications/{notificationId}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['customer', 'notificationId'],
pathParams: ['customer', 'notificationId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.notifications.update
*
* @desc Updates a notification.
*
* @alias directory.notifications.update
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customer The unique ID for the customer's Google account.
* @param {string} params.notificationId The unique ID of the notification.
* @param {admin(directory_v1).Notification} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customer}/notifications/{notificationId}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['customer', 'notificationId'],
pathParams: ['customer', 'notificationId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.orgunits = {
/**
* directory.orgunits.delete
*
* @desc Remove Organization Unit
*
* @alias directory.orgunits.delete
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customerId Immutable id of the Google Apps account
* @param {string} params.orgUnitPath Full path of the organization unit or its Id
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customerId}/orgunits/{orgUnitPath}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['customerId', 'orgUnitPath'],
pathParams: ['customerId', 'orgUnitPath'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.orgunits.get
*
* @desc Retrieve Organization Unit
*
* @alias directory.orgunits.get
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customerId Immutable id of the Google Apps account
* @param {string} params.orgUnitPath Full path of the organization unit or its Id
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customerId}/orgunits/{orgUnitPath}',
method: 'GET'
}, options),
params: params,
requiredParams: ['customerId', 'orgUnitPath'],
pathParams: ['customerId', 'orgUnitPath'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.orgunits.insert
*
* @desc Add Organization Unit
*
* @alias directory.orgunits.insert
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customerId Immutable id of the Google Apps account
* @param {admin(directory_v1).OrgUnit} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customerId}/orgunits',
method: 'POST'
}, options),
params: params,
requiredParams: ['customerId'],
pathParams: ['customerId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.orgunits.list
*
* @desc Retrieve all Organization Units
*
* @alias directory.orgunits.list
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customerId Immutable id of the Google Apps account
* @param {string=} params.orgUnitPath the URL-encoded organization unit's path or its Id
* @param {string=} params.type Whether to return all sub-organizations or just immediate children
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customerId}/orgunits',
method: 'GET'
}, options),
params: params,
requiredParams: ['customerId'],
pathParams: ['customerId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.orgunits.patch
*
* @desc Update Organization Unit. This method supports patch semantics.
*
* @alias directory.orgunits.patch
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customerId Immutable id of the Google Apps account
* @param {string} params.orgUnitPath Full path of the organization unit or its Id
* @param {admin(directory_v1).OrgUnit} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customerId}/orgunits/{orgUnitPath}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['customerId', 'orgUnitPath'],
pathParams: ['customerId', 'orgUnitPath'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.orgunits.update
*
* @desc Update Organization Unit
*
* @alias directory.orgunits.update
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customerId Immutable id of the Google Apps account
* @param {string} params.orgUnitPath Full path of the organization unit or its Id
* @param {admin(directory_v1).OrgUnit} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customerId}/orgunits/{orgUnitPath}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['customerId', 'orgUnitPath'],
pathParams: ['customerId', 'orgUnitPath'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.privileges = {
/**
* directory.privileges.list
*
* @desc Retrieves a paginated list of all privileges for a customer.
*
* @alias directory.privileges.list
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customer Immutable ID of the Google Apps account.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customer}/roles/ALL/privileges',
method: 'GET'
}, options),
params: params,
requiredParams: ['customer'],
pathParams: ['customer'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.resources = {
calendars: {
/**
* directory.resources.calendars.delete
*
* @desc Deletes a calendar resource.
*
* @alias directory.resources.calendars.delete
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.calendarResourceId The unique ID of the calendar resource to delete.
* @param {string} params.customer The unique ID for the customer's Google account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customer}/resources/calendars/{calendarResourceId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['customer', 'calendarResourceId'],
pathParams: ['calendarResourceId', 'customer'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.resources.calendars.get
*
* @desc Retrieves a calendar resource.
*
* @alias directory.resources.calendars.get
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.calendarResourceId The unique ID of the calendar resource to retrieve.
* @param {string} params.customer The unique ID for the customer's Google account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customer}/resources/calendars/{calendarResourceId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['customer', 'calendarResourceId'],
pathParams: ['calendarResourceId', 'customer'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.resources.calendars.insert
*
* @desc Inserts a calendar resource.
*
* @alias directory.resources.calendars.insert
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customer The unique ID for the customer's Google account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.
* @param {admin(directory_v1).CalendarResource} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customer}/resources/calendars',
method: 'POST'
}, options),
params: params,
requiredParams: ['customer'],
pathParams: ['customer'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.resources.calendars.list
*
* @desc Retrieves a list of calendar resources for an account.
*
* @alias directory.resources.calendars.list
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customer The unique ID for the customer's Google account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Token to specify the next page in the list.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customer}/resources/calendars',
method: 'GET'
}, options),
params: params,
requiredParams: ['customer'],
pathParams: ['customer'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.resources.calendars.patch
*
* @desc Updates a calendar resource. This method supports patch semantics.
*
* @alias directory.resources.calendars.patch
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.calendarResourceId The unique ID of the calendar resource to update.
* @param {string} params.customer The unique ID for the customer's Google account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.
* @param {admin(directory_v1).CalendarResource} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customer}/resources/calendars/{calendarResourceId}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['customer', 'calendarResourceId'],
pathParams: ['calendarResourceId', 'customer'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.resources.calendars.update
*
* @desc Updates a calendar resource.
*
* @alias directory.resources.calendars.update
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.calendarResourceId The unique ID of the calendar resource to update.
* @param {string} params.customer The unique ID for the customer's Google account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.
* @param {admin(directory_v1).CalendarResource} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customer}/resources/calendars/{calendarResourceId}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['customer', 'calendarResourceId'],
pathParams: ['calendarResourceId', 'customer'],
context: self
};
return createAPIRequest(parameters, callback);
}
}
};
self.roleAssignments = {
/**
* directory.roleAssignments.delete
*
* @desc Deletes a role assignment.
*
* @alias directory.roleAssignments.delete
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customer Immutable ID of the Google Apps account.
* @param {string} params.roleAssignmentId Immutable ID of the role assignment.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customer}/roleassignments/{roleAssignmentId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['customer', 'roleAssignmentId'],
pathParams: ['customer', 'roleAssignmentId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.roleAssignments.get
*
* @desc Retrieve a role assignment.
*
* @alias directory.roleAssignments.get
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customer Immutable ID of the Google Apps account.
* @param {string} params.roleAssignmentId Immutable ID of the role assignment.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customer}/roleassignments/{roleAssignmentId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['customer', 'roleAssignmentId'],
pathParams: ['customer', 'roleAssignmentId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.roleAssignments.insert
*
* @desc Creates a role assignment.
*
* @alias directory.roleAssignments.insert
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customer Immutable ID of the Google Apps account.
* @param {admin(directory_v1).RoleAssignment} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customer}/roleassignments',
method: 'POST'
}, options),
params: params,
requiredParams: ['customer'],
pathParams: ['customer'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.roleAssignments.list
*
* @desc Retrieves a paginated list of all roleAssignments.
*
* @alias directory.roleAssignments.list
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customer Immutable ID of the Google Apps account.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Token to specify the next page in the list.
* @param {string=} params.roleId Immutable ID of a role. If included in the request, returns only role assignments containing this role ID.
* @param {string=} params.userKey The user's primary email address, alias email address, or unique user ID. If included in the request, returns role assignments only for this user.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customer}/roleassignments',
method: 'GET'
}, options),
params: params,
requiredParams: ['customer'],
pathParams: ['customer'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.roles = {
/**
* directory.roles.delete
*
* @desc Deletes a role.
*
* @alias directory.roles.delete
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customer Immutable ID of the Google Apps account.
* @param {string} params.roleId Immutable ID of the role.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customer}/roles/{roleId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['customer', 'roleId'],
pathParams: ['customer', 'roleId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.roles.get
*
* @desc Retrieves a role.
*
* @alias directory.roles.get
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customer Immutable ID of the Google Apps account.
* @param {string} params.roleId Immutable ID of the role.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customer}/roles/{roleId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['customer', 'roleId'],
pathParams: ['customer', 'roleId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.roles.insert
*
* @desc Creates a role.
*
* @alias directory.roles.insert
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customer Immutable ID of the Google Apps account.
* @param {admin(directory_v1).Role} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customer}/roles',
method: 'POST'
}, options),
params: params,
requiredParams: ['customer'],
pathParams: ['customer'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.roles.list
*
* @desc Retrieves a paginated list of all the roles in a domain.
*
* @alias directory.roles.list
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customer Immutable id of the Google Apps account.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Token to specify the next page in the list.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customer}/roles',
method: 'GET'
}, options),
params: params,
requiredParams: ['customer'],
pathParams: ['customer'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.roles.patch
*
* @desc Updates a role. This method supports patch semantics.
*
* @alias directory.roles.patch
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customer Immutable ID of the Google Apps account.
* @param {string} params.roleId Immutable ID of the role.
* @param {admin(directory_v1).Role} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customer}/roles/{roleId}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['customer', 'roleId'],
pathParams: ['customer', 'roleId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.roles.update
*
* @desc Updates a role.
*
* @alias directory.roles.update
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customer Immutable ID of the Google Apps account.
* @param {string} params.roleId Immutable ID of the role.
* @param {admin(directory_v1).Role} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customer}/roles/{roleId}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['customer', 'roleId'],
pathParams: ['customer', 'roleId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.schemas = {
/**
* directory.schemas.delete
*
* @desc Delete schema
*
* @alias directory.schemas.delete
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customerId Immutable id of the Google Apps account
* @param {string} params.schemaKey Name or immutable Id of the schema
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customerId}/schemas/{schemaKey}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['customerId', 'schemaKey'],
pathParams: ['customerId', 'schemaKey'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.schemas.get
*
* @desc Retrieve schema
*
* @alias directory.schemas.get
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customerId Immutable id of the Google Apps account
* @param {string} params.schemaKey Name or immutable Id of the schema
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customerId}/schemas/{schemaKey}',
method: 'GET'
}, options),
params: params,
requiredParams: ['customerId', 'schemaKey'],
pathParams: ['customerId', 'schemaKey'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.schemas.insert
*
* @desc Create schema.
*
* @alias directory.schemas.insert
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customerId Immutable id of the Google Apps account
* @param {admin(directory_v1).Schema} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customerId}/schemas',
method: 'POST'
}, options),
params: params,
requiredParams: ['customerId'],
pathParams: ['customerId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.schemas.list
*
* @desc Retrieve all schemas for a customer
*
* @alias directory.schemas.list
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customerId Immutable id of the Google Apps account
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customerId}/schemas',
method: 'GET'
}, options),
params: params,
requiredParams: ['customerId'],
pathParams: ['customerId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.schemas.patch
*
* @desc Update schema. This method supports patch semantics.
*
* @alias directory.schemas.patch
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customerId Immutable id of the Google Apps account
* @param {string} params.schemaKey Name or immutable Id of the schema.
* @param {admin(directory_v1).Schema} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customerId}/schemas/{schemaKey}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['customerId', 'schemaKey'],
pathParams: ['customerId', 'schemaKey'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.schemas.update
*
* @desc Update schema
*
* @alias directory.schemas.update
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.customerId Immutable id of the Google Apps account
* @param {string} params.schemaKey Name or immutable Id of the schema.
* @param {admin(directory_v1).Schema} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/customer/{customerId}/schemas/{schemaKey}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['customerId', 'schemaKey'],
pathParams: ['customerId', 'schemaKey'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.tokens = {
/**
* directory.tokens.delete
*
* @desc Delete all access tokens issued by a user for an application.
*
* @alias directory.tokens.delete
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.clientId The Client ID of the application the token is issued to.
* @param {string} params.userKey Identifies the user in the API request. The value can be the user's primary email address, alias email address, or unique user ID.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/users/{userKey}/tokens/{clientId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['userKey', 'clientId'],
pathParams: ['clientId', 'userKey'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.tokens.get
*
* @desc Get information about an access token issued by a user.
*
* @alias directory.tokens.get
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.clientId The Client ID of the application the token is issued to.
* @param {string} params.userKey Identifies the user in the API request. The value can be the user's primary email address, alias email address, or unique user ID.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/users/{userKey}/tokens/{clientId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['userKey', 'clientId'],
pathParams: ['clientId', 'userKey'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.tokens.list
*
* @desc Returns the set of tokens specified user has issued to 3rd party applications.
*
* @alias directory.tokens.list
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.userKey Identifies the user in the API request. The value can be the user's primary email address, alias email address, or unique user ID.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/users/{userKey}/tokens',
method: 'GET'
}, options),
params: params,
requiredParams: ['userKey'],
pathParams: ['userKey'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.users = {
/**
* directory.users.delete
*
* @desc Delete user
*
* @alias directory.users.delete
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.userKey Email or immutable Id of the user
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/users/{userKey}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['userKey'],
pathParams: ['userKey'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.users.get
*
* @desc retrieve user
*
* @alias directory.users.get
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string=} params.customFieldMask Comma-separated list of schema names. All fields from these schemas are fetched. This should only be set when projection=custom.
* @param {string=} params.projection What subset of fields to fetch for this user.
* @param {string} params.userKey Email or immutable Id of the user
* @param {string=} params.viewType Whether to fetch the ADMIN_VIEW or DOMAIN_PUBLIC view of the user.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/users/{userKey}',
method: 'GET'
}, options),
params: params,
requiredParams: ['userKey'],
pathParams: ['userKey'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.users.insert
*
* @desc create user.
*
* @alias directory.users.insert
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {admin(directory_v1).User} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/users',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.users.list
*
* @desc Retrieve either deleted users or all users in a domain (paginated)
*
* @alias directory.users.list
* @memberOf! admin(directory_v1)
*
* @param {object=} params Parameters for request
* @param {string=} params.customFieldMask Comma-separated list of schema names. All fields from these schemas are fetched. This should only be set when projection=custom.
* @param {string=} params.customer Immutable id of the Google Apps account. In case of multi-domain, to fetch all users for a customer, fill this field instead of domain.
* @param {string=} params.domain Name of the domain. Fill this field to get users from only this domain. To return all users in a multi-domain fill customer field instead.
* @param {string=} params.event Event on which subscription is intended (if subscribing)
* @param {integer=} params.maxResults Maximum number of results to return. Default is 100. Max allowed is 500
* @param {string=} params.orderBy Column to use for sorting results
* @param {string=} params.pageToken Token to specify next page in the list
* @param {string=} params.projection What subset of fields to fetch for this user.
* @param {string=} params.query Query string search. Should be of the form "". Complete documentation is at https://developers.google.com/admin-sdk/directory/v1/guides/search-users
* @param {string=} params.showDeleted If set to true retrieves the list of deleted users. Default is false
* @param {string=} params.sortOrder Whether to return results in ascending or descending order.
* @param {string=} params.viewType Whether to fetch the ADMIN_VIEW or DOMAIN_PUBLIC view of the user.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/users',
method: 'GET'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.users.makeAdmin
*
* @desc change admin status of a user
*
* @alias directory.users.makeAdmin
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.userKey Email or immutable Id of the user as admin
* @param {admin(directory_v1).UserMakeAdmin} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
makeAdmin: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/users/{userKey}/makeAdmin',
method: 'POST'
}, options),
params: params,
requiredParams: ['userKey'],
pathParams: ['userKey'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.users.patch
*
* @desc update user. This method supports patch semantics.
*
* @alias directory.users.patch
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.userKey Email or immutable Id of the user. If Id, it should match with id of user object
* @param {admin(directory_v1).User} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/users/{userKey}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['userKey'],
pathParams: ['userKey'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.users.undelete
*
* @desc Undelete a deleted user
*
* @alias directory.users.undelete
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.userKey The immutable id of the user
* @param {admin(directory_v1).UserUndelete} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
undelete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/users/{userKey}/undelete',
method: 'POST'
}, options),
params: params,
requiredParams: ['userKey'],
pathParams: ['userKey'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.users.update
*
* @desc update user
*
* @alias directory.users.update
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.userKey Email or immutable Id of the user. If Id, it should match with id of user object
* @param {admin(directory_v1).User} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/users/{userKey}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['userKey'],
pathParams: ['userKey'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.users.watch
*
* @desc Watch for changes in users list
*
* @alias directory.users.watch
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string=} params.customFieldMask Comma-separated list of schema names. All fields from these schemas are fetched. This should only be set when projection=custom.
* @param {string=} params.customer Immutable id of the Google Apps account. In case of multi-domain, to fetch all users for a customer, fill this field instead of domain.
* @param {string=} params.domain Name of the domain. Fill this field to get users from only this domain. To return all users in a multi-domain fill customer field instead.
* @param {string=} params.event Event on which subscription is intended (if subscribing)
* @param {integer=} params.maxResults Maximum number of results to return. Default is 100. Max allowed is 500
* @param {string=} params.orderBy Column to use for sorting results
* @param {string=} params.pageToken Token to specify next page in the list
* @param {string=} params.projection What subset of fields to fetch for this user.
* @param {string=} params.query Query string search. Should be of the form "". Complete documentation is at https://developers.google.com/admin-sdk/directory/v1/guides/search-users
* @param {string=} params.showDeleted If set to true retrieves the list of deleted users. Default is false
* @param {string=} params.sortOrder Whether to return results in ascending or descending order.
* @param {string=} params.viewType Whether to fetch the ADMIN_VIEW or DOMAIN_PUBLIC view of the user.
* @param {admin(directory_v1).Channel} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
watch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/users/watch',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
aliases: {
/**
* directory.users.aliases.delete
*
* @desc Remove a alias for the user
*
* @alias directory.users.aliases.delete
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.alias The alias to be removed
* @param {string} params.userKey Email or immutable Id of the user
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/users/{userKey}/aliases/{alias}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['userKey', 'alias'],
pathParams: ['alias', 'userKey'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.users.aliases.insert
*
* @desc Add a alias for the user
*
* @alias directory.users.aliases.insert
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.userKey Email or immutable Id of the user
* @param {admin(directory_v1).Alias} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/users/{userKey}/aliases',
method: 'POST'
}, options),
params: params,
requiredParams: ['userKey'],
pathParams: ['userKey'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.users.aliases.list
*
* @desc List all aliases for a user
*
* @alias directory.users.aliases.list
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string=} params.event Event on which subscription is intended (if subscribing)
* @param {string} params.userKey Email or immutable Id of the user
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/users/{userKey}/aliases',
method: 'GET'
}, options),
params: params,
requiredParams: ['userKey'],
pathParams: ['userKey'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.users.aliases.watch
*
* @desc Watch for changes in user aliases list
*
* @alias directory.users.aliases.watch
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string=} params.event Event on which subscription is intended (if subscribing)
* @param {string} params.userKey Email or immutable Id of the user
* @param {admin(directory_v1).Channel} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
watch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/users/{userKey}/aliases/watch',
method: 'POST'
}, options),
params: params,
requiredParams: ['userKey'],
pathParams: ['userKey'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
photos: {
/**
* directory.users.photos.delete
*
* @desc Remove photos for the user
*
* @alias directory.users.photos.delete
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.userKey Email or immutable Id of the user
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/users/{userKey}/photos/thumbnail',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['userKey'],
pathParams: ['userKey'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.users.photos.get
*
* @desc Retrieve photo of a user
*
* @alias directory.users.photos.get
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.userKey Email or immutable Id of the user
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/users/{userKey}/photos/thumbnail',
method: 'GET'
}, options),
params: params,
requiredParams: ['userKey'],
pathParams: ['userKey'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.users.photos.patch
*
* @desc Add a photo for the user. This method supports patch semantics.
*
* @alias directory.users.photos.patch
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.userKey Email or immutable Id of the user
* @param {admin(directory_v1).UserPhoto} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/users/{userKey}/photos/thumbnail',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['userKey'],
pathParams: ['userKey'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.users.photos.update
*
* @desc Add a photo for the user
*
* @alias directory.users.photos.update
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.userKey Email or immutable Id of the user
* @param {admin(directory_v1).UserPhoto} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/users/{userKey}/photos/thumbnail',
method: 'PUT'
}, options),
params: params,
requiredParams: ['userKey'],
pathParams: ['userKey'],
context: self
};
return createAPIRequest(parameters, callback);
}
}
};
self.verificationCodes = {
/**
* directory.verificationCodes.generate
*
* @desc Generate new backup verification codes for the user.
*
* @alias directory.verificationCodes.generate
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.userKey Email or immutable Id of the user
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
generate: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/users/{userKey}/verificationCodes/generate',
method: 'POST'
}, options),
params: params,
requiredParams: ['userKey'],
pathParams: ['userKey'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.verificationCodes.invalidate
*
* @desc Invalidate the current backup verification codes for the user.
*
* @alias directory.verificationCodes.invalidate
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.userKey Email or immutable Id of the user
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
invalidate: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/users/{userKey}/verificationCodes/invalidate',
method: 'POST'
}, options),
params: params,
requiredParams: ['userKey'],
pathParams: ['userKey'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* directory.verificationCodes.list
*
* @desc Returns the current set of valid backup verification codes for the specified user.
*
* @alias directory.verificationCodes.list
* @memberOf! admin(directory_v1)
*
* @param {object} params Parameters for request
* @param {string} params.userKey Identifies the user in the API request. The value can be the user's primary email address, alias email address, or unique user ID.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/directory/v1/users/{userKey}/verificationCodes',
method: 'GET'
}, options),
params: params,
requiredParams: ['userKey'],
pathParams: ['userKey'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
}
/**
* @typedef Alias
* @memberOf! admin(directory_v1)
* @type object
* @property {string} alias A alias email
* @property {string} etag ETag of the resource.
* @property {string} id Unique id of the group (Read-only) Unique id of the user (Read-only)
* @property {string} kind Kind of resource this is.
* @property {string} primaryEmail Group's primary email (Read-only) User's primary email (Read-only)
*/
/**
* @typedef Aliases
* @memberOf! admin(directory_v1)
* @type object
* @property {any[]} aliases List of alias objects.
* @property {string} etag ETag of the resource.
* @property {string} kind Kind of resource this is.
*/
/**
* @typedef Asp
* @memberOf! admin(directory_v1)
* @type object
* @property {integer} codeId The unique ID of the ASP.
* @property {string} creationTime The time when the ASP was created. Expressed in Unix time format.
* @property {string} etag ETag of the ASP.
* @property {string} kind The type of the API resource. This is always admin#directory#asp.
* @property {string} lastTimeUsed The time when the ASP was last used. Expressed in Unix time format.
* @property {string} name The name of the application that the user, represented by their userId, entered when the ASP was created.
* @property {string} userKey The unique ID of the user who issued the ASP.
*/
/**
* @typedef Asps
* @memberOf! admin(directory_v1)
* @type object
* @property {string} etag ETag of the resource.
* @property {admin(directory_v1).Asp[]} items A list of ASP resources.
* @property {string} kind The type of the API resource. This is always admin#directory#aspList.
*/
/**
* @typedef CalendarResource
* @memberOf! admin(directory_v1)
* @type object
* @property {string} etags ETag of the resource.
* @property {string} kind The type of the resource. For calendar resources, the value is admin#directory#resources#calendars#CalendarResource.
* @property {string} resourceDescription The brief description of the calendar resource.
* @property {string} resourceEmail The read-only email ID for the calendar resource. Generated as part of creating a new calendar resource.
* @property {string} resourceId The unique ID for the calendar resource.
* @property {string} resourceName The name of the calendar resource. For example, Training Room 1A
* @property {string} resourceType The type of the calendar resource. Used for grouping resources in the calendar user interface.
*/
/**
* @typedef CalendarResources
* @memberOf! admin(directory_v1)
* @type object
* @property {string} etag ETag of the resource.
* @property {admin(directory_v1).CalendarResource[]} items The CalendarResources in this page of results.
* @property {string} kind Identifies this as a collection of CalendarResources. This is always admin#directory#resources#calendars#calendarResourcesList.
* @property {string} nextPageToken The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results.
*/
/**
* @typedef Channel
* @memberOf! admin(directory_v1)
* @type object
* @property {string} address The address where notifications are delivered for this channel.
* @property {string} expiration Date and time of notification channel expiration, expressed as a Unix timestamp, in milliseconds. Optional.
* @property {string} id A UUID or similar unique string that identifies this channel.
* @property {string} kind Identifies this as a notification channel used to watch for changes to a resource. Value: the fixed string "api#channel".
* @property {object} params Additional parameters controlling delivery channel behavior. Optional.
* @property {boolean} payload A Boolean value to indicate whether payload is wanted. Optional.
* @property {string} resourceId An opaque ID that identifies the resource being watched on this channel. Stable across different API versions.
* @property {string} resourceUri A version-specific identifier for the watched resource.
* @property {string} token An arbitrary string delivered to the target address with each notification delivered over this channel. Optional.
* @property {string} type The type of delivery mechanism used for this channel.
*/
/**
* @typedef ChromeOsDevice
* @memberOf! admin(directory_v1)
* @type object
* @property {object[]} activeTimeRanges List of active time ranges (Read-only)
* @property {string} annotatedAssetId AssetId specified during enrollment or through later annotation
* @property {string} annotatedLocation Address or location of the device as noted by the administrator
* @property {string} annotatedUser User of the device
* @property {string} bootMode Chromebook boot mode (Read-only)
* @property {string} deviceId Unique identifier of Chrome OS Device (Read-only)
* @property {string} etag ETag of the resource.
* @property {string} ethernetMacAddress Chromebook Mac Address on ethernet network interface (Read-only)
* @property {string} firmwareVersion Chromebook firmware version (Read-only)
* @property {string} kind Kind of resource this is.
* @property {string} lastEnrollmentTime Date and time the device was last enrolled (Read-only)
* @property {string} lastSync Date and time the device was last synchronized with the policy settings in the Google Apps administrator control panel (Read-only)
* @property {string} macAddress Chromebook Mac Address on wifi network interface (Read-only)
* @property {string} meid Mobile Equipment identifier for the 3G mobile card in the Chromebook (Read-only)
* @property {string} model Chromebook Model (Read-only)
* @property {string} notes Notes added by the administrator
* @property {string} orderNumber Chromebook order number (Read-only)
* @property {string} orgUnitPath OrgUnit of the device
* @property {string} osVersion Chromebook Os Version (Read-only)
* @property {string} platformVersion Chromebook platform version (Read-only)
* @property {object[]} recentUsers List of recent device users, in descending order by last login time (Read-only)
* @property {string} serialNumber Chromebook serial number (Read-only)
* @property {string} status status of the device (Read-only)
* @property {string} supportEndDate Final date the device will be supported (Read-only)
* @property {boolean} willAutoRenew Will Chromebook auto renew after support end date (Read-only)
*/
/**
* @typedef ChromeOsDeviceAction
* @memberOf! admin(directory_v1)
* @type object
* @property {string} action Action to be taken on the ChromeOs Device
* @property {string} deprovisionReason
*/
/**
* @typedef ChromeOsDevices
* @memberOf! admin(directory_v1)
* @type object
* @property {admin(directory_v1).ChromeOsDevice[]} chromeosdevices List of Chrome OS Device objects.
* @property {string} etag ETag of the resource.
* @property {string} kind Kind of resource this is.
* @property {string} nextPageToken Token used to access next page of this result.
*/
/**
* @typedef Customer
* @memberOf! admin(directory_v1)
* @type object
* @property {string} alternateEmail The customer's secondary contact email address. This email address cannot be on the same domain as the customerDomain
* @property {string} customerCreationTime The customer's creation time (Readonly)
* @property {string} customerDomain The customer's primary domain name string. Do not include the www prefix when creating a new customer.
* @property {string} etag ETag of the resource.
* @property {string} id The unique ID for the customer's Google account. (Readonly)
* @property {string} kind Identifies the resource as a customer. Value: admin#directory#customer
* @property {string} language The customer's ISO 639-2 language code. The default value is en-US
* @property {string} phoneNumber The customer's contact phone number in E.164 format.
* @property {admin(directory_v1).CustomerPostalAddress} postalAddress The customer's postal address information.
*/
/**
* @typedef CustomerPostalAddress
* @memberOf! admin(directory_v1)
* @type object
* @property {string} addressLine1 A customer's physical address. The address can be composed of one to three lines.
* @property {string} addressLine2 Address line 2 of the address.
* @property {string} addressLine3 Address line 3 of the address.
* @property {string} contactName The customer contact's name.
* @property {string} countryCode This is a required property. For countryCode information see the ISO 3166 country code elements.
* @property {string} locality Name of the locality. An example of a locality value is the city of San Francisco.
* @property {string} organizationName The company or company division name.
* @property {string} postalCode The postal code. A postalCode example is a postal zip code such as 10009. This is in accordance with - http://portablecontacts.net/draft-spec.html#address_element.
* @property {string} region Name of the region. An example of a region value is NY for the state of New York.
*/
/**
* @typedef DomainAlias
* @memberOf! admin(directory_v1)
* @type object
* @property {string} creationTime The creation time of the domain alias. (Read-only).
* @property {string} domainAliasName The domain alias name.
* @property {string} etag ETag of the resource.
* @property {string} kind Kind of resource this is.
* @property {string} parentDomainName The parent domain name that the domain alias is associated with. This can either be a primary or secondary domain name within a customer.
* @property {boolean} verified Indicates the verification state of a domain alias. (Read-only)
*/
/**
* @typedef DomainAliases
* @memberOf! admin(directory_v1)
* @type object
* @property {admin(directory_v1).DomainAlias[]} domainAliases List of domain alias objects.
* @property {string} etag ETag of the resource.
* @property {string} kind Kind of resource this is.
*/
/**
* @typedef Domains
* @memberOf! admin(directory_v1)
* @type object
* @property {string} creationTime Creation time of the domain. (Read-only).
* @property {admin(directory_v1).DomainAlias[]} domainAliases List of domain alias objects. (Read-only)
* @property {string} domainName The domain name of the customer.
* @property {string} etag ETag of the resource.
* @property {boolean} isPrimary Indicates if the domain is a primary domain (Read-only).
* @property {string} kind Kind of resource this is.
* @property {boolean} verified Indicates the verification state of a domain. (Read-only).
*/
/**
* @typedef Domains2
* @memberOf! admin(directory_v1)
* @type object
* @property {admin(directory_v1).Domains[]} domains List of domain objects.
* @property {string} etag ETag of the resource.
* @property {string} kind Kind of resource this is.
*/
/**
* @typedef Group
* @memberOf! admin(directory_v1)
* @type object
* @property {boolean} adminCreated Is the group created by admin (Read-only) *
* @property {string[]} aliases List of aliases (Read-only)
* @property {string} description Description of the group
* @property {string} directMembersCount Group direct members count
* @property {string} email Email of Group
* @property {string} etag ETag of the resource.
* @property {string} id Unique identifier of Group (Read-only)
* @property {string} kind Kind of resource this is.
* @property {string} name Group name
* @property {string[]} nonEditableAliases List of non editable aliases (Read-only)
*/
/**
* @typedef Groups
* @memberOf! admin(directory_v1)
* @type object
* @property {string} etag ETag of the resource.
* @property {admin(directory_v1).Group[]} groups List of group objects.
* @property {string} kind Kind of resource this is.
* @property {string} nextPageToken Token used to access next page of this result.
*/
/**
* @typedef Member
* @memberOf! admin(directory_v1)
* @type object
* @property {string} email Email of member (Read-only)
* @property {string} etag ETag of the resource.
* @property {string} id Unique identifier of customer member (Read-only) Unique identifier of group (Read-only) Unique identifier of member (Read-only)
* @property {string} kind Kind of resource this is.
* @property {string} role Role of member
* @property {string} status Status of member (Immutable)
* @property {string} type Type of member (Immutable)
*/
/**
* @typedef Members
* @memberOf! admin(directory_v1)
* @type object
* @property {string} etag ETag of the resource.
* @property {string} kind Kind of resource this is.
* @property {admin(directory_v1).Member[]} members List of member objects.
* @property {string} nextPageToken Token used to access next page of this result.
*/
/**
* @typedef MobileDevice
* @memberOf! admin(directory_v1)
* @type object
* @property {boolean} adbStatus Adb (USB debugging) enabled or disabled on device (Read-only)
* @property {object[]} applications List of applications installed on Mobile Device
* @property {string} basebandVersion Mobile Device Baseband version (Read-only)
* @property {string} bootloaderVersion Mobile Device Bootloader version (Read-only)
* @property {string} brand Mobile Device Brand (Read-only)
* @property {string} buildNumber Mobile Device Build number (Read-only)
* @property {string} defaultLanguage The default locale used on the Mobile Device (Read-only)
* @property {boolean} developerOptionsStatus Developer options enabled or disabled on device (Read-only)
* @property {string} deviceCompromisedStatus Mobile Device compromised status (Read-only)
* @property {string} deviceId Mobile Device serial number (Read-only)
* @property {string} devicePasswordStatus DevicePasswordStatus (Read-only)
* @property {string[]} email List of owner user's email addresses (Read-only)
* @property {string} encryptionStatus Mobile Device Encryption Status (Read-only)
* @property {string} etag ETag of the resource.
* @property {string} firstSync Date and time the device was first synchronized with the policy settings in the Google Apps administrator control panel (Read-only)
* @property {string} hardware Mobile Device Hardware (Read-only)
* @property {string} hardwareId Mobile Device Hardware Id (Read-only)
* @property {string} imei Mobile Device IMEI number (Read-only)
* @property {string} kernelVersion Mobile Device Kernel version (Read-only)
* @property {string} kind Kind of resource this is.
* @property {string} lastSync Date and time the device was last synchronized with the policy settings in the Google Apps administrator control panel (Read-only)
* @property {boolean} managedAccountIsOnOwnerProfile Boolean indicating if this account is on owner/primary profile or not (Read-only)
* @property {string} manufacturer Mobile Device manufacturer (Read-only)
* @property {string} meid Mobile Device MEID number (Read-only)
* @property {string} model Name of the model of the device
* @property {string[]} name List of owner user's names (Read-only)
* @property {string} networkOperator Mobile Device mobile or network operator (if available) (Read-only)
* @property {string} os Name of the mobile operating system
* @property {string[]} otherAccountsInfo List of accounts added on device (Read-only)
* @property {string} privilege DMAgentPermission (Read-only)
* @property {string} releaseVersion Mobile Device release version version (Read-only)
* @property {string} resourceId Unique identifier of Mobile Device (Read-only)
* @property {string} securityPatchLevel Mobile Device Security patch level (Read-only)
* @property {string} serialNumber Mobile Device SSN or Serial Number (Read-only)
* @property {string} status Status of the device (Read-only)
* @property {boolean} supportsWorkProfile Work profile supported on device (Read-only)
* @property {string} type The type of device (Read-only)
* @property {boolean} unknownSourcesStatus Unknown sources enabled or disabled on device (Read-only)
* @property {string} userAgent Mobile Device user agent
* @property {string} wifiMacAddress Mobile Device WiFi MAC address (Read-only)
*/
/**
* @typedef MobileDeviceAction
* @memberOf! admin(directory_v1)
* @type object
* @property {string} action Action to be taken on the Mobile Device
*/
/**
* @typedef MobileDevices
* @memberOf! admin(directory_v1)
* @type object
* @property {string} etag ETag of the resource.
* @property {string} kind Kind of resource this is.
* @property {admin(directory_v1).MobileDevice[]} mobiledevices List of Mobile Device objects.
* @property {string} nextPageToken Token used to access next page of this result.
*/
/**
* @typedef Notification
* @memberOf! admin(directory_v1)
* @type object
* @property {string} body Body of the notification (Read-only)
* @property {string} etag ETag of the resource.
* @property {string} fromAddress Address from which the notification is received (Read-only)
* @property {boolean} isUnread Boolean indicating whether the notification is unread or not.
* @property {string} kind The type of the resource.
* @property {string} notificationId
* @property {string} sendTime Time at which notification was sent (Read-only)
* @property {string} subject Subject of the notification (Read-only)
*/
/**
* @typedef Notifications
* @memberOf! admin(directory_v1)
* @type object
* @property {string} etag ETag of the resource.
* @property {admin(directory_v1).Notification[]} items List of notifications in this page.
* @property {string} kind The type of the resource.
* @property {string} nextPageToken Token for fetching the next page of notifications.
* @property {integer} unreadNotificationsCount Number of unread notification for the domain.
*/
/**
* @typedef OrgUnit
* @memberOf! admin(directory_v1)
* @type object
* @property {boolean} blockInheritance Should block inheritance
* @property {string} description Description of OrgUnit
* @property {string} etag ETag of the resource.
* @property {string} kind Kind of resource this is.
* @property {string} name Name of OrgUnit
* @property {string} orgUnitId Id of OrgUnit
* @property {string} orgUnitPath Path of OrgUnit
* @property {string} parentOrgUnitId Id of parent OrgUnit
* @property {string} parentOrgUnitPath Path of parent OrgUnit
*/
/**
* @typedef OrgUnits
* @memberOf! admin(directory_v1)
* @type object
* @property {string} etag ETag of the resource.
* @property {string} kind Kind of resource this is.
* @property {admin(directory_v1).OrgUnit[]} organizationUnits List of user objects.
*/
/**
* @typedef Privilege
* @memberOf! admin(directory_v1)
* @type object
* @property {admin(directory_v1).Privilege[]} childPrivileges A list of child privileges. Privileges for a service form a tree. Each privilege can have a list of child privileges; this list is empty for a leaf privilege.
* @property {string} etag ETag of the resource.
* @property {boolean} isOuScopable If the privilege can be restricted to an organization unit.
* @property {string} kind The type of the API resource. This is always admin#directory#privilege.
* @property {string} privilegeName The name of the privilege.
* @property {string} serviceId The obfuscated ID of the service this privilege is for.
* @property {string} serviceName The name of the service this privilege is for.
*/
/**
* @typedef Privileges
* @memberOf! admin(directory_v1)
* @type object
* @property {string} etag ETag of the resource.
* @property {admin(directory_v1).Privilege[]} items A list of Privilege resources.
* @property {string} kind The type of the API resource. This is always admin#directory#privileges.
*/
/**
* @typedef Role
* @memberOf! admin(directory_v1)
* @type object
* @property {string} etag ETag of the resource.
* @property {boolean} isSuperAdminRole Returns true if the role is a super admin role.
* @property {boolean} isSystemRole Returns true if this is a pre-defined system role.
* @property {string} kind The type of the API resource. This is always admin#directory#role.
* @property {string} roleDescription A short description of the role.
* @property {string} roleId ID of the role.
* @property {string} roleName Name of the role.
* @property {object[]} rolePrivileges The set of privileges that are granted to this role.
*/
/**
* @typedef RoleAssignment
* @memberOf! admin(directory_v1)
* @type object
* @property {string} assignedTo The unique ID of the user this role is assigned to.
* @property {string} etag ETag of the resource.
* @property {string} kind The type of the API resource. This is always admin#directory#roleAssignment.
* @property {string} orgUnitId If the role is restricted to an organization unit, this contains the ID for the organization unit the exercise of this role is restricted to.
* @property {string} roleAssignmentId ID of this roleAssignment.
* @property {string} roleId The ID of the role that is assigned.
* @property {string} scopeType The scope in which this role is assigned. Possible values are:
- CUSTOMER
- ORG_UNIT
*/
/**
* @typedef RoleAssignments
* @memberOf! admin(directory_v1)
* @type object
* @property {string} etag ETag of the resource.
* @property {admin(directory_v1).RoleAssignment[]} items A list of RoleAssignment resources.
* @property {string} kind The type of the API resource. This is always admin#directory#roleAssignments.
* @property {string} nextPageToken
*/
/**
* @typedef Roles
* @memberOf! admin(directory_v1)
* @type object
* @property {string} etag ETag of the resource.
* @property {admin(directory_v1).Role[]} items A list of Role resources.
* @property {string} kind The type of the API resource. This is always admin#directory#roles.
* @property {string} nextPageToken
*/
/**
* @typedef Schema
* @memberOf! admin(directory_v1)
* @type object
* @property {string} etag ETag of the resource.
* @property {admin(directory_v1).SchemaFieldSpec[]} fields Fields of Schema
* @property {string} kind Kind of resource this is.
* @property {string} schemaId Unique identifier of Schema (Read-only)
* @property {string} schemaName Schema name
*/
/**
* @typedef SchemaFieldSpec
* @memberOf! admin(directory_v1)
* @type object
* @property {string} etag ETag of the resource.
* @property {string} fieldId Unique identifier of Field (Read-only)
* @property {string} fieldName Name of the field.
* @property {string} fieldType Type of the field.
* @property {boolean} indexed Boolean specifying whether the field is indexed or not.
* @property {string} kind Kind of resource this is.
* @property {boolean} multiValued Boolean specifying whether this is a multi-valued field or not.
* @property {object} numericIndexingSpec Indexing spec for a numeric field. By default, only exact match queries will be supported for numeric fields. Setting the numericIndexingSpec allows range queries to be supported.
* @property {string} readAccessType Read ACLs on the field specifying who can view values of this field. Valid values are "ALL_DOMAIN_USERS" and "ADMINS_AND_SELF".
*/
/**
* @typedef Schemas
* @memberOf! admin(directory_v1)
* @type object
* @property {string} etag ETag of the resource.
* @property {string} kind Kind of resource this is.
* @property {admin(directory_v1).Schema[]} schemas List of UserSchema objects.
*/
/**
* @typedef Token
* @memberOf! admin(directory_v1)
* @type object
* @property {boolean} anonymous Whether the application is registered with Google. The value is true if the application has an anonymous Client ID.
* @property {string} clientId The Client ID of the application the token is issued to.
* @property {string} displayText The displayable name of the application the token is issued to.
* @property {string} etag ETag of the resource.
* @property {string} kind The type of the API resource. This is always admin#directory#token.
* @property {boolean} nativeApp Whether the token is issued to an installed application. The value is true if the application is installed to a desktop or mobile device.
* @property {string[]} scopes A list of authorization scopes the application is granted.
* @property {string} userKey The unique ID of the user that issued the token.
*/
/**
* @typedef Tokens
* @memberOf! admin(directory_v1)
* @type object
* @property {string} etag ETag of the resource.
* @property {admin(directory_v1).Token[]} items A list of Token resources.
* @property {string} kind The type of the API resource. This is always admin#directory#tokenList.
*/
/**
* @typedef User
* @memberOf! admin(directory_v1)
* @type object
* @property {any} addresses
* @property {boolean} agreedToTerms Indicates if user has agreed to terms (Read-only)
* @property {string[]} aliases List of aliases (Read-only)
* @property {boolean} changePasswordAtNextLogin Boolean indicating if the user should change password in next login
* @property {string} creationTime User's Google account creation time. (Read-only)
* @property {object} customSchemas Custom fields of the user.
* @property {string} customerId CustomerId of User (Read-only)
* @property {string} deletionTime
* @property {any} emails
* @property {string} etag ETag of the resource.
* @property {any} externalIds
* @property {string} hashFunction Hash function name for password. Supported are MD5, SHA-1 and crypt
* @property {string} id Unique identifier of User (Read-only)
* @property {any} ims
* @property {boolean} includeInGlobalAddressList Boolean indicating if user is included in Global Address List
* @property {boolean} ipWhitelisted Boolean indicating if ip is whitelisted
* @property {boolean} isAdmin Boolean indicating if the user is admin (Read-only)
* @property {boolean} isDelegatedAdmin Boolean indicating if the user is delegated admin (Read-only)
* @property {boolean} isEnforcedIn2Sv Is 2-step verification enforced (Read-only)
* @property {boolean} isEnrolledIn2Sv Is enrolled in 2-step verification (Read-only)
* @property {boolean} isMailboxSetup Is mailbox setup (Read-only)
* @property {string} kind Kind of resource this is.
* @property {string} lastLoginTime User's last login time. (Read-only)
* @property {admin(directory_v1).UserName} name User's name
* @property {string[]} nonEditableAliases List of non editable aliases (Read-only)
* @property {any} notes
* @property {string} orgUnitPath OrgUnit of User
* @property {any} organizations
* @property {string} password User's password
* @property {any} phones
* @property {any} posixAccounts
* @property {string} primaryEmail username of User
* @property {any} relations
* @property {any} sshPublicKeys
* @property {boolean} suspended Indicates if user is suspended
* @property {string} suspensionReason Suspension reason if user is suspended (Read-only)
* @property {string} thumbnailPhotoEtag ETag of the user's photo (Read-only)
* @property {string} thumbnailPhotoUrl Photo Url of the user (Read-only)
* @property {any} websites
*/
/**
* @typedef UserAbout
* @memberOf! admin(directory_v1)
* @type object
* @property {string} contentType About entry can have a type which indicates the content type. It can either be plain or html. By default, notes contents are assumed to contain plain text.
* @property {string} value Actual value of notes.
*/
/**
* @typedef UserAddress
* @memberOf! admin(directory_v1)
* @type object
* @property {string} country Country.
* @property {string} countryCode Country code.
* @property {string} customType Custom type.
* @property {string} extendedAddress Extended Address.
* @property {string} formatted Formatted address.
* @property {string} locality Locality.
* @property {string} poBox Other parts of address.
* @property {string} postalCode Postal code.
* @property {boolean} primary If this is user's primary address. Only one entry could be marked as primary.
* @property {string} region Region.
* @property {boolean} sourceIsStructured User supplied address was structured. Structured addresses are NOT supported at this time. You might be able to write structured addresses, but any values will eventually be clobbered.
* @property {string} streetAddress Street.
* @property {string} type Each entry can have a type which indicates standard values of that entry. For example address could be of home, work etc. In addition to the standard type, an entry can have a custom type and can take any value. Such type should have the CUSTOM value as type and also have a customType value.
*/
/**
* @typedef UserCustomProperties
* @memberOf! admin(directory_v1)
* @type object
*/
/**
* @typedef UserEmail
* @memberOf! admin(directory_v1)
* @type object
* @property {string} address Email id of the user.
* @property {string} customType Custom Type.
* @property {boolean} primary If this is user's primary email. Only one entry could be marked as primary.
* @property {string} type Each entry can have a type which indicates standard types of that entry. For example email could be of home, work etc. In addition to the standard type, an entry can have a custom type and can take any value Such types should have the CUSTOM value as type and also have a customType value.
*/
/**
* @typedef UserExternalId
* @memberOf! admin(directory_v1)
* @type object
* @property {string} customType Custom type.
* @property {string} type The type of the Id.
* @property {string} value The value of the id.
*/
/**
* @typedef UserIm
* @memberOf! admin(directory_v1)
* @type object
* @property {string} customProtocol Custom protocol.
* @property {string} customType Custom type.
* @property {string} im Instant messenger id.
* @property {boolean} primary If this is user's primary im. Only one entry could be marked as primary.
* @property {string} protocol Protocol used in the instant messenger. It should be one of the values from ImProtocolTypes map. Similar to type, it can take a CUSTOM value and specify the custom name in customProtocol field.
* @property {string} type Each entry can have a type which indicates standard types of that entry. For example instant messengers could be of home, work etc. In addition to the standard type, an entry can have a custom type and can take any value. Such types should have the CUSTOM value as type and also have a customType value.
*/
/**
* @typedef UserMakeAdmin
* @memberOf! admin(directory_v1)
* @type object
* @property {boolean} status Boolean indicating new admin status of the user
*/
/**
* @typedef UserName
* @memberOf! admin(directory_v1)
* @type object
* @property {string} familyName Last Name
* @property {string} fullName Full Name
* @property {string} givenName First Name
*/
/**
* @typedef UserOrganization
* @memberOf! admin(directory_v1)
* @type object
* @property {string} costCenter The cost center of the users department.
* @property {string} customType Custom type.
* @property {string} department Department within the organization.
* @property {string} description Description of the organization.
* @property {string} domain The domain to which the organization belongs to.
* @property {string} location Location of the organization. This need not be fully qualified address.
* @property {string} name Name of the organization
* @property {boolean} primary If it user's primary organization.
* @property {string} symbol Symbol of the organization.
* @property {string} title Title (designation) of the user in the organization.
* @property {string} type Each entry can have a type which indicates standard types of that entry. For example organization could be of school, work etc. In addition to the standard type, an entry can have a custom type and can give it any name. Such types should have the CUSTOM value as type and also have a CustomType value.
*/
/**
* @typedef UserPhone
* @memberOf! admin(directory_v1)
* @type object
* @property {string} customType Custom Type.
* @property {boolean} primary If this is user's primary phone or not.
* @property {string} type Each entry can have a type which indicates standard types of that entry. For example phone could be of home_fax, work, mobile etc. In addition to the standard type, an entry can have a custom type and can give it any name. Such types should have the CUSTOM value as type and also have a customType value.
* @property {string} value Phone number.
*/
/**
* @typedef UserPhoto
* @memberOf! admin(directory_v1)
* @type object
* @property {string} etag ETag of the resource.
* @property {integer} height Height in pixels of the photo
* @property {string} id Unique identifier of User (Read-only)
* @property {string} kind Kind of resource this is.
* @property {string} mimeType Mime Type of the photo
* @property {string} photoData Base64 encoded photo data
* @property {string} primaryEmail Primary email of User (Read-only)
* @property {integer} width Width in pixels of the photo
*/
/**
* @typedef UserPosixAccount
* @memberOf! admin(directory_v1)
* @type object
* @property {string} gecos The GECOS (user information) entry for this account.
* @property {integer} gid The default group ID.
* @property {string} homeDirectory The path to the home directory for this account.
* @property {boolean} primary If this is user's primary account within the SystemId.
* @property {string} shell The path to the login shell for this account.
* @property {string} systemId System identifier for which account Username or Uid apply to.
* @property {integer} uid The user ID.
* @property {string} username The username of the account.
*/
/**
* @typedef UserRelation
* @memberOf! admin(directory_v1)
* @type object
* @property {string} customType Custom Type.
* @property {string} type The relation of the user. Some of the possible values are mother, father, sister, brother, manager, assistant, partner.
* @property {string} value The name of the relation.
*/
/**
* @typedef UserSshPublicKey
* @memberOf! admin(directory_v1)
* @type object
* @property {string} expirationTimeUsec An expiration time in microseconds since epoch.
* @property {string} fingerprint A SHA-256 fingerprint of the SSH public key. (Read-only)
* @property {string} key An SSH public key.
*/
/**
* @typedef UserUndelete
* @memberOf! admin(directory_v1)
* @type object
* @property {string} orgUnitPath OrgUnit of User
*/
/**
* @typedef UserWebsite
* @memberOf! admin(directory_v1)
* @type object
* @property {string} customType Custom Type.
* @property {boolean} primary If this is user's primary website or not.
* @property {string} type Each entry can have a type which indicates standard types of that entry. For example website could be of home, work, blog etc. In addition to the standard type, an entry can have a custom type and can give it any name. Such types should have the CUSTOM value as type and also have a customType value.
* @property {string} value Website.
*/
/**
* @typedef Users
* @memberOf! admin(directory_v1)
* @type object
* @property {string} etag ETag of the resource.
* @property {string} kind Kind of resource this is.
* @property {string} nextPageToken Token used to access next page of this result.
* @property {string} trigger_event Event that triggered this response (only used in case of Push Response)
* @property {admin(directory_v1).User[]} users List of user objects.
*/
/**
* @typedef VerificationCode
* @memberOf! admin(directory_v1)
* @type object
* @property {string} etag ETag of the resource.
* @property {string} kind The type of the resource. This is always admin#directory#verificationCode.
* @property {string} userId The obfuscated unique ID of the user.
* @property {string} verificationCode A current verification code for the user. Invalidated or used verification codes are not returned as part of the result.
*/
/**
* @typedef VerificationCodes
* @memberOf! admin(directory_v1)
* @type object
* @property {string} etag ETag of the resource.
* @property {admin(directory_v1).VerificationCode[]} items A list of verification code resources.
* @property {string} kind The type of the resource. This is always admin#directory#verificationCodesList.
*/
module.exports = Admin;
|
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* Admin Reports API
*
* Fetches reports for the administrators of G Suite customers about the usage, collaboration, security, and risk for their users.
*
* @example
* var google = require('googleapis');
* var admin = google.admin('reports_v1');
*
* @namespace admin
* @type {Function}
* @version reports_v1
* @variation reports_v1
* @param {object=} options Options for Admin
*/
function Admin(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.activities = {
/**
* reports.activities.list
*
* @desc Retrieves a list of activities for a specific customer and application.
*
* @alias reports.activities.list
* @memberOf! admin(reports_v1)
*
* @param {object} params Parameters for request
* @param {string=} params.actorIpAddress IP Address of host where the event was performed. Supports both IPv4 and IPv6 addresses.
* @param {string} params.applicationName Application name for which the events are to be retrieved.
* @param {string=} params.customerId Represents the customer for which the data is to be fetched.
* @param {string=} params.endTime Return events which occurred at or before this time.
* @param {string=} params.eventName Name of the event being queried.
* @param {string=} params.filters Event parameters in the form [parameter1 name][operator][parameter1 value],[parameter2 name][operator][parameter2 value],...
* @param {integer=} params.maxResults Number of activity records to be shown in each page.
* @param {string=} params.pageToken Token to specify next page.
* @param {string=} params.startTime Return events which occurred at or after this time.
* @param {string} params.userKey Represents the profile id or the user email for which the data should be filtered. When 'all' is specified as the userKey, it returns usageReports for all users.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/reports/v1/activity/users/{userKey}/applications/{applicationName}',
method: 'GET'
}, options),
params: params,
requiredParams: ['userKey', 'applicationName'],
pathParams: ['applicationName', 'userKey'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* reports.activities.watch
*
* @desc Push changes to activities
*
* @alias reports.activities.watch
* @memberOf! admin(reports_v1)
*
* @param {object} params Parameters for request
* @param {string=} params.actorIpAddress IP Address of host where the event was performed. Supports both IPv4 and IPv6 addresses.
* @param {string} params.applicationName Application name for which the events are to be retrieved.
* @param {string=} params.customerId Represents the customer for which the data is to be fetched.
* @param {string=} params.endTime Return events which occurred at or before this time.
* @param {string=} params.eventName Name of the event being queried.
* @param {string=} params.filters Event parameters in the form [parameter1 name][operator][parameter1 value],[parameter2 name][operator][parameter2 value],...
* @param {integer=} params.maxResults Number of activity records to be shown in each page.
* @param {string=} params.pageToken Token to specify next page.
* @param {string=} params.startTime Return events which occurred at or after this time.
* @param {string} params.userKey Represents the profile id or the user email for which the data should be filtered. When 'all' is specified as the userKey, it returns usageReports for all users.
* @param {admin(reports_v1).Channel} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
watch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/reports/v1/activity/users/{userKey}/applications/{applicationName}/watch',
method: 'POST'
}, options),
params: params,
requiredParams: ['userKey', 'applicationName'],
pathParams: ['applicationName', 'userKey'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.channels = {
/**
* admin.channels.stop
*
* @desc Stop watching resources through this channel
*
* @alias admin.channels.stop
* @memberOf! admin(reports_v1)
*
* @param {object} params Parameters for request
* @param {admin(reports_v1).Channel} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
stop: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/reports/v1/admin/reports_v1/channels/stop',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.customerUsageReports = {
/**
* reports.customerUsageReports.get
*
* @desc Retrieves a report which is a collection of properties / statistics for a specific customer.
*
* @alias reports.customerUsageReports.get
* @memberOf! admin(reports_v1)
*
* @param {object} params Parameters for request
* @param {string=} params.customerId Represents the customer for which the data is to be fetched.
* @param {string} params.date Represents the date in yyyy-mm-dd format for which the data is to be fetched.
* @param {string=} params.pageToken Token to specify next page.
* @param {string=} params.parameters Represents the application name, parameter name pairs to fetch in csv as app_name1:param_name1, app_name2:param_name2.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/reports/v1/usage/dates/{date}',
method: 'GET'
}, options),
params: params,
requiredParams: ['date'],
pathParams: ['date'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.userUsageReport = {
/**
* reports.userUsageReport.get
*
* @desc Retrieves a report which is a collection of properties / statistics for a set of users.
*
* @alias reports.userUsageReport.get
* @memberOf! admin(reports_v1)
*
* @param {object} params Parameters for request
* @param {string=} params.customerId Represents the customer for which the data is to be fetched.
* @param {string} params.date Represents the date in yyyy-mm-dd format for which the data is to be fetched.
* @param {string=} params.filters Represents the set of filters including parameter operator value.
* @param {integer=} params.maxResults Maximum number of results to return. Maximum allowed is 1000
* @param {string=} params.pageToken Token to specify next page.
* @param {string=} params.parameters Represents the application name, parameter name pairs to fetch in csv as app_name1:param_name1, app_name2:param_name2.
* @param {string} params.userKey Represents the profile id or the user email for which the data should be filtered.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/admin/reports/v1/usage/users/{userKey}/dates/{date}',
method: 'GET'
}, options),
params: params,
requiredParams: ['userKey', 'date'],
pathParams: ['date', 'userKey'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
}
/**
* @typedef Activities
* @memberOf! admin(reports_v1)
* @type object
* @property {string} etag ETag of the resource.
* @property {admin(reports_v1).Activity[]} items Each record in read response.
* @property {string} kind Kind of list response this is.
* @property {string} nextPageToken Token for retrieving the next page
*/
/**
* @typedef Activity
* @memberOf! admin(reports_v1)
* @type object
* @property {object} actor User doing the action.
* @property {string} etag ETag of the entry.
* @property {object[]} events Activity events.
* @property {object} id Unique identifier for each activity record.
* @property {string} ipAddress IP Address of the user doing the action.
* @property {string} kind Kind of resource this is.
* @property {string} ownerDomain Domain of source customer.
*/
/**
* @typedef Channel
* @memberOf! admin(reports_v1)
* @type object
* @property {string} address The address where notifications are delivered for this channel.
* @property {string} expiration Date and time of notification channel expiration, expressed as a Unix timestamp, in milliseconds. Optional.
* @property {string} id A UUID or similar unique string that identifies this channel.
* @property {string} kind Identifies this as a notification channel used to watch for changes to a resource. Value: the fixed string "api#channel".
* @property {object} params Additional parameters controlling delivery channel behavior. Optional.
* @property {boolean} payload A Boolean value to indicate whether payload is wanted. Optional.
* @property {string} resourceId An opaque ID that identifies the resource being watched on this channel. Stable across different API versions.
* @property {string} resourceUri A version-specific identifier for the watched resource.
* @property {string} token An arbitrary string delivered to the target address with each notification delivered over this channel. Optional.
* @property {string} type The type of delivery mechanism used for this channel.
*/
/**
* @typedef UsageReport
* @memberOf! admin(reports_v1)
* @type object
* @property {string} date The date to which the record belongs.
* @property {object} entity Information about the type of the item.
* @property {string} etag ETag of the resource.
* @property {string} kind The kind of object.
* @property {object[]} parameters Parameter value pairs for various applications.
*/
/**
* @typedef UsageReports
* @memberOf! admin(reports_v1)
* @type object
* @property {string} etag ETag of the resource.
* @property {string} kind The kind of object.
* @property {string} nextPageToken Token for retrieving the next page
* @property {admin(reports_v1).UsageReport[]} usageReports Various application parameter records.
* @property {object[]} warnings Warnings if any.
*/
module.exports = Admin;
|
| File | Statements | Branches | Functions | Lines | |||||
|---|---|---|---|---|---|---|---|---|---|
| v4.1.js | 2.38% | (4 / 168) | 0% | (0 / 106) | 0% | (0 / 27) | 2.38% | (4 / 168) |
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* AdSense Host API
*
* Generates performance reports, generates ad codes, and provides publisher management capabilities for AdSense Hosts.
*
* @example
* var google = require('googleapis');
* var adsensehost = google.adsensehost('v4.1');
*
* @namespace adsensehost
* @type {Function}
* @version v4.1
* @variation v4.1
* @param {object=} options Options for Adsensehost
*/
function Adsensehost(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.accounts = {
/**
* adsensehost.accounts.get
*
* @desc Get information about the selected associated AdSense account.
*
* @alias adsensehost.accounts.get
* @memberOf! adsensehost(v4.1)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account to get information about.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adsensehost/v4.1/accounts/{accountId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId'],
pathParams: ['accountId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adsensehost.accounts.list
*
* @desc List hosted accounts associated with this AdSense account by ad client id.
*
* @alias adsensehost.accounts.list
* @memberOf! adsensehost(v4.1)
*
* @param {object} params Parameters for request
* @param {string} params.filterAdClientId Ad clients to list accounts for.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adsensehost/v4.1/accounts',
method: 'GET'
}, options),
params: params,
requiredParams: ['filterAdClientId'],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
adclients: {
/**
* adsensehost.accounts.adclients.get
*
* @desc Get information about one of the ad clients in the specified publisher's AdSense account.
*
* @alias adsensehost.accounts.adclients.get
* @memberOf! adsensehost(v4.1)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account which contains the ad client.
* @param {string} params.adClientId Ad client to get.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adsensehost/v4.1/accounts/{accountId}/adclients/{adClientId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'adClientId'],
pathParams: ['accountId', 'adClientId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adsensehost.accounts.adclients.list
*
* @desc List all hosted ad clients in the specified hosted account.
*
* @alias adsensehost.accounts.adclients.list
* @memberOf! adsensehost(v4.1)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account for which to list ad clients.
* @param {integer=} params.maxResults The maximum number of ad clients to include in the response, used for paging.
* @param {string=} params.pageToken A continuation token, used to page through ad clients. To retrieve the next page, set this parameter to the value of "nextPageToken" from the previous response.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adsensehost/v4.1/accounts/{accountId}/adclients',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId'],
pathParams: ['accountId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
adunits: {
/**
* adsensehost.accounts.adunits.delete
*
* @desc Delete the specified ad unit from the specified publisher AdSense account.
*
* @alias adsensehost.accounts.adunits.delete
* @memberOf! adsensehost(v4.1)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account which contains the ad unit.
* @param {string} params.adClientId Ad client for which to get ad unit.
* @param {string} params.adUnitId Ad unit to delete.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adsensehost/v4.1/accounts/{accountId}/adclients/{adClientId}/adunits/{adUnitId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['accountId', 'adClientId', 'adUnitId'],
pathParams: ['accountId', 'adClientId', 'adUnitId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adsensehost.accounts.adunits.get
*
* @desc Get the specified host ad unit in this AdSense account.
*
* @alias adsensehost.accounts.adunits.get
* @memberOf! adsensehost(v4.1)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account which contains the ad unit.
* @param {string} params.adClientId Ad client for which to get ad unit.
* @param {string} params.adUnitId Ad unit to get.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adsensehost/v4.1/accounts/{accountId}/adclients/{adClientId}/adunits/{adUnitId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'adClientId', 'adUnitId'],
pathParams: ['accountId', 'adClientId', 'adUnitId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adsensehost.accounts.adunits.getAdCode
*
* @desc Get ad code for the specified ad unit, attaching the specified host custom channels.
*
* @alias adsensehost.accounts.adunits.getAdCode
* @memberOf! adsensehost(v4.1)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account which contains the ad client.
* @param {string} params.adClientId Ad client with contains the ad unit.
* @param {string} params.adUnitId Ad unit to get the code for.
* @param {string=} params.hostCustomChannelId Host custom channel to attach to the ad code.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
getAdCode: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adsensehost/v4.1/accounts/{accountId}/adclients/{adClientId}/adunits/{adUnitId}/adcode',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'adClientId', 'adUnitId'],
pathParams: ['accountId', 'adClientId', 'adUnitId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adsensehost.accounts.adunits.insert
*
* @desc Insert the supplied ad unit into the specified publisher AdSense account.
*
* @alias adsensehost.accounts.adunits.insert
* @memberOf! adsensehost(v4.1)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account which will contain the ad unit.
* @param {string} params.adClientId Ad client into which to insert the ad unit.
* @param {adsensehost(v4.1).AdUnit} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adsensehost/v4.1/accounts/{accountId}/adclients/{adClientId}/adunits',
method: 'POST'
}, options),
params: params,
requiredParams: ['accountId', 'adClientId'],
pathParams: ['accountId', 'adClientId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adsensehost.accounts.adunits.list
*
* @desc List all ad units in the specified publisher's AdSense account.
*
* @alias adsensehost.accounts.adunits.list
* @memberOf! adsensehost(v4.1)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account which contains the ad client.
* @param {string} params.adClientId Ad client for which to list ad units.
* @param {boolean=} params.includeInactive Whether to include inactive ad units. Default: true.
* @param {integer=} params.maxResults The maximum number of ad units to include in the response, used for paging.
* @param {string=} params.pageToken A continuation token, used to page through ad units. To retrieve the next page, set this parameter to the value of "nextPageToken" from the previous response.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adsensehost/v4.1/accounts/{accountId}/adclients/{adClientId}/adunits',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'adClientId'],
pathParams: ['accountId', 'adClientId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adsensehost.accounts.adunits.patch
*
* @desc Update the supplied ad unit in the specified publisher AdSense account. This method supports patch semantics.
*
* @alias adsensehost.accounts.adunits.patch
* @memberOf! adsensehost(v4.1)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account which contains the ad client.
* @param {string} params.adClientId Ad client which contains the ad unit.
* @param {string} params.adUnitId Ad unit to get.
* @param {adsensehost(v4.1).AdUnit} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adsensehost/v4.1/accounts/{accountId}/adclients/{adClientId}/adunits',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['accountId', 'adClientId', 'adUnitId'],
pathParams: ['accountId', 'adClientId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adsensehost.accounts.adunits.update
*
* @desc Update the supplied ad unit in the specified publisher AdSense account.
*
* @alias adsensehost.accounts.adunits.update
* @memberOf! adsensehost(v4.1)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account which contains the ad client.
* @param {string} params.adClientId Ad client which contains the ad unit.
* @param {adsensehost(v4.1).AdUnit} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adsensehost/v4.1/accounts/{accountId}/adclients/{adClientId}/adunits',
method: 'PUT'
}, options),
params: params,
requiredParams: ['accountId', 'adClientId'],
pathParams: ['accountId', 'adClientId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
reports: {
/**
* adsensehost.accounts.reports.generate
*
* @desc Generate an AdSense report based on the report request sent in the query parameters. Returns the result as JSON; to retrieve output in CSV format specify "alt=csv" as a query parameter.
*
* @alias adsensehost.accounts.reports.generate
* @memberOf! adsensehost(v4.1)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Hosted account upon which to report.
* @param {string=} params.dimension Dimensions to base the report on.
* @param {string} params.endDate End of the date range to report on in "YYYY-MM-DD" format, inclusive.
* @param {string=} params.filter Filters to be run on the report.
* @param {string=} params.locale Optional locale to use for translating report output to a local language. Defaults to "en_US" if not specified.
* @param {integer=} params.maxResults The maximum number of rows of report data to return.
* @param {string=} params.metric Numeric columns to include in the report.
* @param {string=} params.sort The name of a dimension or metric to sort the resulting report on, optionally prefixed with "+" to sort ascending or "-" to sort descending. If no prefix is specified, the column is sorted ascending.
* @param {string} params.startDate Start of the date range to report on in "YYYY-MM-DD" format, inclusive.
* @param {integer=} params.startIndex Index of the first row of report data to return.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
generate: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adsensehost/v4.1/accounts/{accountId}/reports',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'startDate', 'endDate'],
pathParams: ['accountId'],
context: self
};
return createAPIRequest(parameters, callback);
}
}
};
self.adclients = {
/**
* adsensehost.adclients.get
*
* @desc Get information about one of the ad clients in the Host AdSense account.
*
* @alias adsensehost.adclients.get
* @memberOf! adsensehost(v4.1)
*
* @param {object} params Parameters for request
* @param {string} params.adClientId Ad client to get.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adsensehost/v4.1/adclients/{adClientId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['adClientId'],
pathParams: ['adClientId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adsensehost.adclients.list
*
* @desc List all host ad clients in this AdSense account.
*
* @alias adsensehost.adclients.list
* @memberOf! adsensehost(v4.1)
*
* @param {object=} params Parameters for request
* @param {integer=} params.maxResults The maximum number of ad clients to include in the response, used for paging.
* @param {string=} params.pageToken A continuation token, used to page through ad clients. To retrieve the next page, set this parameter to the value of "nextPageToken" from the previous response.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adsensehost/v4.1/adclients',
method: 'GET'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.associationsessions = {
/**
* adsensehost.associationsessions.start
*
* @desc Create an association session for initiating an association with an AdSense user.
*
* @alias adsensehost.associationsessions.start
* @memberOf! adsensehost(v4.1)
*
* @param {object} params Parameters for request
* @param {string} params.productCode Products to associate with the user.
* @param {string=} params.userLocale The preferred locale of the user.
* @param {string=} params.websiteLocale The locale of the user's hosted website.
* @param {string} params.websiteUrl The URL of the user's hosted website.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
start: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adsensehost/v4.1/associationsessions/start',
method: 'GET'
}, options),
params: params,
requiredParams: ['productCode', 'websiteUrl'],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adsensehost.associationsessions.verify
*
* @desc Verify an association session after the association callback returns from AdSense signup.
*
* @alias adsensehost.associationsessions.verify
* @memberOf! adsensehost(v4.1)
*
* @param {object} params Parameters for request
* @param {string} params.token The token returned to the association callback URL.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
verify: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adsensehost/v4.1/associationsessions/verify',
method: 'GET'
}, options),
params: params,
requiredParams: ['token'],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.customchannels = {
/**
* adsensehost.customchannels.delete
*
* @desc Delete a specific custom channel from the host AdSense account.
*
* @alias adsensehost.customchannels.delete
* @memberOf! adsensehost(v4.1)
*
* @param {object} params Parameters for request
* @param {string} params.adClientId Ad client from which to delete the custom channel.
* @param {string} params.customChannelId Custom channel to delete.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adsensehost/v4.1/adclients/{adClientId}/customchannels/{customChannelId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['adClientId', 'customChannelId'],
pathParams: ['adClientId', 'customChannelId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adsensehost.customchannels.get
*
* @desc Get a specific custom channel from the host AdSense account.
*
* @alias adsensehost.customchannels.get
* @memberOf! adsensehost(v4.1)
*
* @param {object} params Parameters for request
* @param {string} params.adClientId Ad client from which to get the custom channel.
* @param {string} params.customChannelId Custom channel to get.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adsensehost/v4.1/adclients/{adClientId}/customchannels/{customChannelId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['adClientId', 'customChannelId'],
pathParams: ['adClientId', 'customChannelId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adsensehost.customchannels.insert
*
* @desc Add a new custom channel to the host AdSense account.
*
* @alias adsensehost.customchannels.insert
* @memberOf! adsensehost(v4.1)
*
* @param {object} params Parameters for request
* @param {string} params.adClientId Ad client to which the new custom channel will be added.
* @param {adsensehost(v4.1).CustomChannel} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adsensehost/v4.1/adclients/{adClientId}/customchannels',
method: 'POST'
}, options),
params: params,
requiredParams: ['adClientId'],
pathParams: ['adClientId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adsensehost.customchannels.list
*
* @desc List all host custom channels in this AdSense account.
*
* @alias adsensehost.customchannels.list
* @memberOf! adsensehost(v4.1)
*
* @param {object} params Parameters for request
* @param {string} params.adClientId Ad client for which to list custom channels.
* @param {integer=} params.maxResults The maximum number of custom channels to include in the response, used for paging.
* @param {string=} params.pageToken A continuation token, used to page through custom channels. To retrieve the next page, set this parameter to the value of "nextPageToken" from the previous response.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adsensehost/v4.1/adclients/{adClientId}/customchannels',
method: 'GET'
}, options),
params: params,
requiredParams: ['adClientId'],
pathParams: ['adClientId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adsensehost.customchannels.patch
*
* @desc Update a custom channel in the host AdSense account. This method supports patch semantics.
*
* @alias adsensehost.customchannels.patch
* @memberOf! adsensehost(v4.1)
*
* @param {object} params Parameters for request
* @param {string} params.adClientId Ad client in which the custom channel will be updated.
* @param {string} params.customChannelId Custom channel to get.
* @param {adsensehost(v4.1).CustomChannel} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adsensehost/v4.1/adclients/{adClientId}/customchannels',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['adClientId', 'customChannelId'],
pathParams: ['adClientId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adsensehost.customchannels.update
*
* @desc Update a custom channel in the host AdSense account.
*
* @alias adsensehost.customchannels.update
* @memberOf! adsensehost(v4.1)
*
* @param {object} params Parameters for request
* @param {string} params.adClientId Ad client in which the custom channel will be updated.
* @param {adsensehost(v4.1).CustomChannel} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adsensehost/v4.1/adclients/{adClientId}/customchannels',
method: 'PUT'
}, options),
params: params,
requiredParams: ['adClientId'],
pathParams: ['adClientId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.reports = {
/**
* adsensehost.reports.generate
*
* @desc Generate an AdSense report based on the report request sent in the query parameters. Returns the result as JSON; to retrieve output in CSV format specify "alt=csv" as a query parameter.
*
* @alias adsensehost.reports.generate
* @memberOf! adsensehost(v4.1)
*
* @param {object} params Parameters for request
* @param {string=} params.dimension Dimensions to base the report on.
* @param {string} params.endDate End of the date range to report on in "YYYY-MM-DD" format, inclusive.
* @param {string=} params.filter Filters to be run on the report.
* @param {string=} params.locale Optional locale to use for translating report output to a local language. Defaults to "en_US" if not specified.
* @param {integer=} params.maxResults The maximum number of rows of report data to return.
* @param {string=} params.metric Numeric columns to include in the report.
* @param {string=} params.sort The name of a dimension or metric to sort the resulting report on, optionally prefixed with "+" to sort ascending or "-" to sort descending. If no prefix is specified, the column is sorted ascending.
* @param {string} params.startDate Start of the date range to report on in "YYYY-MM-DD" format, inclusive.
* @param {integer=} params.startIndex Index of the first row of report data to return.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
generate: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adsensehost/v4.1/reports',
method: 'GET'
}, options),
params: params,
requiredParams: ['startDate', 'endDate'],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.urlchannels = {
/**
* adsensehost.urlchannels.delete
*
* @desc Delete a URL channel from the host AdSense account.
*
* @alias adsensehost.urlchannels.delete
* @memberOf! adsensehost(v4.1)
*
* @param {object} params Parameters for request
* @param {string} params.adClientId Ad client from which to delete the URL channel.
* @param {string} params.urlChannelId URL channel to delete.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adsensehost/v4.1/adclients/{adClientId}/urlchannels/{urlChannelId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['adClientId', 'urlChannelId'],
pathParams: ['adClientId', 'urlChannelId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adsensehost.urlchannels.insert
*
* @desc Add a new URL channel to the host AdSense account.
*
* @alias adsensehost.urlchannels.insert
* @memberOf! adsensehost(v4.1)
*
* @param {object} params Parameters for request
* @param {string} params.adClientId Ad client to which the new URL channel will be added.
* @param {adsensehost(v4.1).UrlChannel} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adsensehost/v4.1/adclients/{adClientId}/urlchannels',
method: 'POST'
}, options),
params: params,
requiredParams: ['adClientId'],
pathParams: ['adClientId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* adsensehost.urlchannels.list
*
* @desc List all host URL channels in the host AdSense account.
*
* @alias adsensehost.urlchannels.list
* @memberOf! adsensehost(v4.1)
*
* @param {object} params Parameters for request
* @param {string} params.adClientId Ad client for which to list URL channels.
* @param {integer=} params.maxResults The maximum number of URL channels to include in the response, used for paging.
* @param {string=} params.pageToken A continuation token, used to page through URL channels. To retrieve the next page, set this parameter to the value of "nextPageToken" from the previous response.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/adsensehost/v4.1/adclients/{adClientId}/urlchannels',
method: 'GET'
}, options),
params: params,
requiredParams: ['adClientId'],
pathParams: ['adClientId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
}
/**
* @typedef Account
* @memberOf! adsensehost(v4.1)
* @type object
* @property {string} id Unique identifier of this account.
* @property {string} kind Kind of resource this is, in this case adsensehost#account.
* @property {string} name Name of this account.
* @property {string} status Approval status of this account. One of: PENDING, APPROVED, DISABLED.
*/
/**
* @typedef Accounts
* @memberOf! adsensehost(v4.1)
* @type object
* @property {string} etag ETag of this response for caching purposes.
* @property {adsensehost(v4.1).Account[]} items The accounts returned in this list response.
* @property {string} kind Kind of list this is, in this case adsensehost#accounts.
*/
/**
* @typedef AdClient
* @memberOf! adsensehost(v4.1)
* @type object
* @property {boolean} arcOptIn Whether this ad client is opted in to ARC.
* @property {string} id Unique identifier of this ad client.
* @property {string} kind Kind of resource this is, in this case adsensehost#adClient.
* @property {string} productCode This ad client's product code, which corresponds to the PRODUCT_CODE report dimension.
* @property {boolean} supportsReporting Whether this ad client supports being reported on.
*/
/**
* @typedef AdClients
* @memberOf! adsensehost(v4.1)
* @type object
* @property {string} etag ETag of this response for caching purposes.
* @property {adsensehost(v4.1).AdClient[]} items The ad clients returned in this list response.
* @property {string} kind Kind of list this is, in this case adsensehost#adClients.
* @property {string} nextPageToken Continuation token used to page through ad clients. To retrieve the next page of results, set the next request's "pageToken" value to this.
*/
/**
* @typedef AdCode
* @memberOf! adsensehost(v4.1)
* @type object
* @property {string} adCode The ad code snippet.
* @property {string} kind Kind this is, in this case adsensehost#adCode.
*/
/**
* @typedef AdStyle
* @memberOf! adsensehost(v4.1)
* @type object
* @property {object} colors The colors included in the style. These are represented as six hexadecimal characters, similar to HTML color codes, but without the leading hash.
* @property {string} corners The style of the corners in the ad (deprecated: never populated, ignored).
* @property {object} font The font which is included in the style.
* @property {string} kind Kind this is, in this case adsensehost#adStyle.
*/
/**
* @typedef AdUnit
* @memberOf! adsensehost(v4.1)
* @type object
* @property {string} code Identity code of this ad unit, not necessarily unique across ad clients.
* @property {object} contentAdsSettings Settings specific to content ads (AFC) and highend mobile content ads (AFMC - deprecated).
* @property {adsensehost(v4.1).AdStyle} customStyle Custom style information specific to this ad unit.
* @property {string} id Unique identifier of this ad unit. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.
* @property {string} kind Kind of resource this is, in this case adsensehost#adUnit.
* @property {object} mobileContentAdsSettings Settings specific to WAP mobile content ads (AFMC - deprecated).
* @property {string} name Name of this ad unit.
* @property {string} status Status of this ad unit. Possible values are:
NEW: Indicates that the ad unit was created within the last seven days and does not yet have any activity associated with it.
ACTIVE: Indicates that there has been activity on this ad unit in the last seven days.
INACTIVE: Indicates that there has been no activity on this ad unit in the last seven days.
*/
/**
* @typedef AdUnits
* @memberOf! adsensehost(v4.1)
* @type object
* @property {string} etag ETag of this response for caching purposes.
* @property {adsensehost(v4.1).AdUnit[]} items The ad units returned in this list response.
* @property {string} kind Kind of list this is, in this case adsensehost#adUnits.
* @property {string} nextPageToken Continuation token used to page through ad units. To retrieve the next page of results, set the next request's "pageToken" value to this.
*/
/**
* @typedef AssociationSession
* @memberOf! adsensehost(v4.1)
* @type object
* @property {string} accountId Hosted account id of the associated publisher after association. Present if status is ACCEPTED.
* @property {string} id Unique identifier of this association session.
* @property {string} kind Kind of resource this is, in this case adsensehost#associationSession.
* @property {string[]} productCodes The products to associate with the user. Options: AFC, AFG, AFV, AFS (deprecated), AFMC (deprecated)
* @property {string} redirectUrl Redirect URL of this association session. Used to redirect users into the AdSense association flow.
* @property {string} status Status of the completed association, available once the association callback token has been verified. One of ACCEPTED, REJECTED, or ERROR.
* @property {string} userLocale The preferred locale of the user themselves when going through the AdSense association flow.
* @property {string} websiteLocale The locale of the user's hosted website.
* @property {string} websiteUrl The URL of the user's hosted website.
*/
/**
* @typedef CustomChannel
* @memberOf! adsensehost(v4.1)
* @type object
* @property {string} code Code of this custom channel, not necessarily unique across ad clients.
* @property {string} id Unique identifier of this custom channel. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.
* @property {string} kind Kind of resource this is, in this case adsensehost#customChannel.
* @property {string} name Name of this custom channel.
*/
/**
* @typedef CustomChannels
* @memberOf! adsensehost(v4.1)
* @type object
* @property {string} etag ETag of this response for caching purposes.
* @property {adsensehost(v4.1).CustomChannel[]} items The custom channels returned in this list response.
* @property {string} kind Kind of list this is, in this case adsensehost#customChannels.
* @property {string} nextPageToken Continuation token used to page through custom channels. To retrieve the next page of results, set the next request's "pageToken" value to this.
*/
/**
* @typedef Report
* @memberOf! adsensehost(v4.1)
* @type object
* @property {string[]} averages The averages of the report. This is the same length as any other row in the report; cells corresponding to dimension columns are empty.
* @property {object[]} headers The header information of the columns requested in the report. This is a list of headers; one for each dimension in the request, followed by one for each metric in the request.
* @property {string} kind Kind this is, in this case adsensehost#report.
* @property {array[]} rows The output rows of the report. Each row is a list of cells; one for each dimension in the request, followed by one for each metric in the request. The dimension cells contain strings, and the metric cells contain numbers.
* @property {string} totalMatchedRows The total number of rows matched by the report request. Fewer rows may be returned in the response due to being limited by the row count requested or the report row limit.
* @property {string[]} totals The totals of the report. This is the same length as any other row in the report; cells corresponding to dimension columns are empty.
* @property {string[]} warnings Any warnings associated with generation of the report.
*/
/**
* @typedef UrlChannel
* @memberOf! adsensehost(v4.1)
* @type object
* @property {string} id Unique identifier of this URL channel. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.
* @property {string} kind Kind of resource this is, in this case adsensehost#urlChannel.
* @property {string} urlPattern URL Pattern of this URL channel. Does not include "http://" or "https://". Example: www.example.com/home
*/
/**
* @typedef UrlChannels
* @memberOf! adsensehost(v4.1)
* @type object
* @property {string} etag ETag of this response for caching purposes.
* @property {adsensehost(v4.1).UrlChannel[]} items The URL channels returned in this list response.
* @property {string} kind Kind of list this is, in this case adsensehost#urlChannels.
* @property {string} nextPageToken Continuation token used to page through URL channels. To retrieve the next page of results, set the next request's "pageToken" value to this.
*/
module.exports = Adsensehost;
|
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* Google Analytics API
*
* Views and manages your Google Analytics data.
*
* @example
* var google = require('googleapis');
* var analytics = google.analytics('v2.4');
*
* @namespace analytics
* @type {Function}
* @version v2.4
* @variation v2.4
* @param {object=} options Options for Analytics
*/
function Analytics(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.data = {
/**
* analytics.data.get
*
* @desc Returns Analytics report data for a view (profile).
*
* @alias analytics.data.get
* @memberOf! analytics(v2.4)
*
* @param {object} params Parameters for request
* @param {string=} params.dimensions A comma-separated list of Analytics dimensions. E.g., 'ga:browser,ga:city'.
* @param {string} params.end-date End date for fetching report data. All requests should specify an end date formatted as YYYY-MM-DD.
* @param {string=} params.filters A comma-separated list of dimension or metric filters to be applied to the report data.
* @param {string} params.ids Unique table ID for retrieving report data. Table ID is of the form ga:XXXX, where XXXX is the Analytics view (profile) ID.
* @param {integer=} params.max-results The maximum number of entries to include in this feed.
* @param {string} params.metrics A comma-separated list of Analytics metrics. E.g., 'ga:sessions,ga:pageviews'. At least one metric must be specified to retrieve a valid Analytics report.
* @param {string=} params.segment An Analytics advanced segment to be applied to the report data.
* @param {string=} params.sort A comma-separated list of dimensions or metrics that determine the sort order for the report data.
* @param {string} params.start-date Start date for fetching report data. All requests should specify a start date formatted as YYYY-MM-DD.
* @param {integer=} params.start-index An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v2.4/data',
method: 'GET'
}, options),
params: params,
requiredParams: ['ids', 'start-date', 'end-date', 'metrics'],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.management = {
accounts: {
/**
* analytics.management.accounts.list
*
* @desc Lists all accounts to which the user has access.
*
* @alias analytics.management.accounts.list
* @memberOf! analytics(v2.4)
*
* @param {object=} params Parameters for request
* @param {integer=} params.max-results The maximum number of accounts to include in this response.
* @param {integer=} params.start-index An index of the first account to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v2.4/management/accounts',
method: 'GET'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
},
goals: {
/**
* analytics.management.goals.list
*
* @desc Lists goals to which the user has access.
*
* @alias analytics.management.goals.list
* @memberOf! analytics(v2.4)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to retrieve goals for. Can either be a specific account ID or '~all', which refers to all the accounts that user has access to.
* @param {integer=} params.max-results The maximum number of goals to include in this response.
* @param {string} params.profileId View (Profile) ID to retrieve goals for. Can either be a specific view (profile) ID or '~all', which refers to all the views (profiles) that user has access to.
* @param {integer=} params.start-index An index of the first goal to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.
* @param {string} params.webPropertyId Web property ID to retrieve goals for. Can either be a specific web property ID or '~all', which refers to all the web properties that user has access to.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v2.4/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/goals',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'profileId'],
pathParams: ['accountId', 'profileId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
profiles: {
/**
* analytics.management.profiles.list
*
* @desc Lists views (profiles) to which the user has access.
*
* @alias analytics.management.profiles.list
* @memberOf! analytics(v2.4)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID for the views (profiles) to retrieve. Can either be a specific account ID or '~all', which refers to all the accounts to which the user has access.
* @param {integer=} params.max-results The maximum number of views (profiles) to include in this response.
* @param {integer=} params.start-index An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.
* @param {string} params.webPropertyId Web property ID for the views (profiles) to retrieve. Can either be a specific web property ID or '~all', which refers to all the web properties to which the user has access.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v2.4/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId'],
pathParams: ['accountId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
segments: {
/**
* analytics.management.segments.list
*
* @desc Lists advanced segments to which the user has access.
*
* @alias analytics.management.segments.list
* @memberOf! analytics(v2.4)
*
* @param {object=} params Parameters for request
* @param {integer=} params.max-results The maximum number of advanced segments to include in this response.
* @param {integer=} params.start-index An index of the first advanced segment to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v2.4/management/segments',
method: 'GET'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
},
webproperties: {
/**
* analytics.management.webproperties.list
*
* @desc Lists web properties to which the user has access.
*
* @alias analytics.management.webproperties.list
* @memberOf! analytics(v2.4)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to retrieve web properties for. Can either be a specific account ID or '~all', which refers to all the accounts that user has access to.
* @param {integer=} params.max-results The maximum number of web properties to include in this response.
* @param {integer=} params.start-index An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v2.4/management/accounts/{accountId}/webproperties',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId'],
pathParams: ['accountId'],
context: self
};
return createAPIRequest(parameters, callback);
}
}
};
}
module.exports = Analytics;
|
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 1791 1792 1793 1794 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822 1823 1824 1825 1826 1827 1828 1829 1830 1831 1832 1833 1834 1835 1836 1837 1838 1839 1840 1841 1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853 1854 1855 1856 1857 1858 1859 1860 1861 1862 1863 1864 1865 1866 1867 1868 1869 1870 1871 1872 1873 1874 1875 1876 1877 1878 1879 1880 1881 1882 1883 1884 1885 1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896 1897 1898 1899 1900 1901 1902 1903 1904 1905 1906 1907 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 1939 1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 2026 2027 2028 2029 2030 2031 2032 2033 2034 2035 2036 2037 2038 2039 2040 2041 2042 2043 2044 2045 2046 2047 2048 2049 2050 2051 2052 2053 2054 2055 2056 2057 2058 2059 2060 2061 2062 2063 2064 2065 2066 2067 2068 2069 2070 2071 2072 2073 2074 2075 2076 2077 2078 2079 2080 2081 2082 2083 2084 2085 2086 2087 2088 2089 2090 2091 2092 2093 2094 2095 2096 2097 2098 2099 2100 2101 2102 2103 2104 2105 2106 2107 2108 2109 2110 2111 2112 2113 2114 2115 2116 2117 2118 2119 2120 2121 2122 2123 2124 2125 2126 2127 2128 2129 2130 2131 2132 2133 2134 2135 2136 2137 2138 2139 2140 2141 2142 2143 2144 2145 2146 2147 2148 2149 2150 2151 2152 2153 2154 2155 2156 2157 2158 2159 2160 2161 2162 2163 2164 2165 2166 2167 2168 2169 2170 2171 2172 2173 2174 2175 2176 2177 2178 2179 2180 2181 2182 2183 2184 2185 2186 2187 2188 2189 2190 2191 2192 2193 2194 2195 2196 2197 2198 2199 2200 2201 2202 2203 2204 2205 2206 2207 2208 2209 2210 2211 2212 2213 2214 2215 2216 2217 2218 2219 2220 2221 2222 2223 2224 2225 2226 2227 2228 2229 2230 2231 2232 2233 2234 2235 2236 2237 2238 2239 2240 2241 2242 2243 2244 2245 2246 2247 2248 2249 2250 2251 2252 2253 2254 2255 2256 2257 2258 2259 2260 2261 2262 2263 2264 2265 2266 2267 2268 2269 2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 2280 2281 2282 2283 2284 2285 2286 2287 2288 2289 2290 2291 2292 2293 2294 2295 2296 2297 2298 2299 2300 2301 2302 2303 2304 2305 2306 2307 2308 2309 2310 2311 2312 2313 2314 2315 2316 2317 2318 2319 2320 2321 2322 2323 2324 2325 2326 2327 2328 2329 2330 2331 2332 2333 2334 2335 2336 2337 2338 2339 2340 2341 2342 2343 2344 2345 2346 2347 2348 2349 2350 2351 2352 2353 2354 2355 2356 2357 2358 2359 2360 2361 2362 2363 2364 2365 2366 2367 2368 2369 2370 2371 2372 2373 2374 2375 2376 2377 2378 2379 2380 2381 2382 2383 2384 2385 2386 2387 2388 2389 2390 2391 2392 2393 2394 2395 2396 2397 2398 2399 2400 2401 2402 2403 2404 2405 2406 2407 2408 2409 2410 2411 2412 2413 2414 2415 2416 2417 2418 2419 2420 2421 2422 2423 2424 2425 2426 2427 2428 2429 2430 2431 2432 2433 2434 2435 2436 2437 2438 2439 2440 2441 2442 2443 2444 2445 2446 2447 2448 2449 2450 2451 2452 2453 2454 2455 2456 2457 2458 2459 2460 2461 2462 2463 2464 2465 2466 2467 2468 2469 2470 2471 2472 2473 2474 2475 2476 2477 2478 2479 2480 2481 2482 2483 2484 2485 2486 2487 2488 2489 2490 2491 2492 2493 2494 2495 2496 2497 2498 2499 2500 2501 2502 2503 2504 2505 2506 2507 2508 2509 2510 2511 2512 2513 2514 2515 2516 2517 2518 2519 2520 2521 2522 2523 2524 2525 2526 2527 2528 2529 2530 2531 2532 2533 2534 2535 2536 2537 2538 2539 2540 2541 2542 2543 2544 2545 2546 2547 2548 2549 2550 2551 2552 2553 2554 2555 2556 2557 2558 2559 2560 2561 2562 2563 2564 2565 2566 2567 2568 2569 2570 2571 2572 2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 2730 2731 2732 2733 2734 2735 2736 2737 2738 2739 2740 2741 2742 2743 2744 2745 2746 2747 2748 2749 2750 2751 2752 2753 2754 2755 2756 2757 2758 2759 2760 2761 2762 2763 2764 2765 2766 2767 2768 2769 2770 2771 2772 2773 2774 2775 2776 2777 2778 2779 2780 2781 2782 2783 2784 2785 2786 2787 2788 2789 2790 2791 2792 2793 2794 2795 2796 2797 2798 2799 2800 2801 2802 2803 2804 2805 2806 2807 2808 2809 2810 2811 2812 2813 2814 2815 2816 2817 2818 2819 2820 2821 2822 2823 2824 2825 2826 2827 2828 2829 2830 2831 2832 2833 2834 2835 2836 2837 2838 2839 2840 2841 2842 2843 2844 2845 2846 2847 2848 2849 2850 2851 2852 2853 2854 2855 2856 2857 2858 2859 2860 2861 2862 2863 2864 2865 2866 2867 2868 2869 2870 2871 2872 2873 2874 2875 2876 2877 2878 2879 2880 2881 2882 2883 2884 2885 2886 2887 2888 2889 2890 2891 2892 2893 2894 2895 2896 2897 2898 2899 2900 2901 2902 2903 2904 2905 2906 2907 2908 2909 2910 2911 2912 2913 2914 2915 2916 2917 2918 2919 2920 2921 2922 2923 2924 2925 2926 2927 2928 2929 2930 2931 2932 2933 2934 2935 2936 2937 2938 2939 2940 2941 2942 2943 2944 2945 2946 2947 2948 2949 2950 2951 2952 2953 2954 2955 2956 2957 2958 2959 2960 2961 2962 2963 2964 2965 2966 2967 2968 2969 2970 2971 2972 2973 2974 2975 2976 2977 2978 2979 2980 2981 2982 2983 2984 2985 2986 2987 2988 2989 2990 2991 2992 2993 2994 2995 2996 2997 2998 2999 3000 3001 3002 3003 3004 3005 3006 3007 3008 3009 3010 3011 3012 3013 3014 3015 3016 3017 3018 3019 3020 3021 3022 3023 3024 3025 3026 3027 3028 3029 3030 3031 3032 3033 3034 3035 3036 3037 3038 3039 3040 3041 3042 3043 3044 3045 3046 3047 3048 3049 3050 3051 3052 3053 3054 3055 3056 3057 3058 3059 3060 3061 3062 3063 3064 3065 3066 3067 3068 3069 3070 3071 3072 3073 3074 3075 3076 3077 3078 3079 3080 3081 3082 3083 3084 3085 3086 3087 3088 3089 3090 3091 3092 3093 3094 3095 3096 3097 3098 3099 3100 3101 3102 3103 3104 3105 3106 3107 3108 3109 3110 3111 3112 3113 3114 3115 3116 3117 3118 3119 3120 3121 3122 3123 3124 3125 3126 3127 3128 3129 3130 3131 3132 3133 3134 3135 3136 3137 3138 3139 3140 3141 3142 3143 3144 3145 3146 3147 3148 3149 3150 3151 3152 3153 3154 3155 3156 3157 3158 3159 3160 3161 3162 3163 3164 3165 3166 3167 3168 3169 3170 3171 3172 3173 3174 3175 3176 3177 3178 3179 3180 3181 3182 3183 3184 3185 3186 3187 3188 3189 3190 3191 3192 3193 3194 3195 3196 3197 3198 3199 3200 3201 3202 3203 3204 3205 3206 3207 3208 3209 3210 3211 3212 3213 3214 3215 3216 3217 3218 3219 3220 3221 3222 3223 3224 3225 3226 3227 3228 3229 3230 3231 3232 3233 3234 3235 3236 3237 3238 3239 3240 3241 3242 3243 3244 3245 3246 3247 3248 3249 3250 3251 3252 3253 3254 3255 3256 3257 3258 3259 3260 3261 3262 3263 3264 3265 3266 3267 3268 3269 3270 3271 3272 3273 3274 3275 3276 3277 3278 3279 3280 3281 3282 3283 3284 3285 3286 3287 3288 3289 3290 3291 3292 3293 3294 3295 3296 3297 3298 3299 3300 3301 3302 3303 3304 3305 3306 3307 3308 3309 3310 3311 3312 3313 3314 3315 3316 3317 3318 3319 3320 3321 3322 3323 3324 3325 3326 3327 3328 3329 3330 3331 3332 3333 3334 3335 3336 3337 3338 3339 3340 3341 3342 3343 3344 3345 3346 3347 3348 3349 3350 3351 3352 3353 3354 3355 3356 3357 3358 3359 3360 3361 3362 3363 3364 3365 3366 3367 3368 3369 3370 3371 3372 3373 3374 3375 3376 3377 3378 3379 3380 3381 3382 3383 3384 3385 3386 3387 3388 3389 3390 3391 3392 3393 3394 3395 3396 3397 3398 3399 3400 3401 3402 3403 3404 3405 3406 3407 3408 3409 3410 3411 3412 3413 3414 3415 3416 3417 3418 3419 3420 3421 3422 3423 3424 3425 3426 3427 3428 3429 3430 3431 3432 3433 3434 3435 3436 3437 3438 3439 3440 3441 3442 3443 3444 3445 3446 3447 3448 3449 3450 3451 3452 3453 3454 3455 3456 3457 3458 3459 3460 3461 3462 3463 3464 3465 3466 3467 3468 3469 3470 3471 3472 3473 3474 3475 3476 3477 3478 3479 3480 3481 3482 3483 3484 3485 3486 3487 3488 3489 3490 3491 3492 3493 3494 3495 3496 3497 3498 3499 3500 3501 3502 3503 3504 3505 3506 3507 3508 3509 3510 3511 3512 3513 3514 3515 3516 3517 3518 3519 3520 3521 3522 3523 3524 3525 3526 3527 3528 3529 3530 3531 3532 3533 3534 3535 3536 3537 3538 3539 3540 3541 3542 3543 3544 3545 3546 3547 3548 3549 3550 3551 3552 3553 3554 3555 3556 3557 3558 3559 3560 3561 3562 3563 3564 3565 3566 3567 3568 3569 3570 3571 3572 3573 3574 3575 3576 3577 3578 3579 3580 3581 3582 3583 3584 3585 3586 3587 3588 3589 3590 3591 3592 3593 3594 3595 3596 3597 3598 3599 3600 3601 3602 3603 3604 3605 3606 3607 3608 3609 3610 3611 3612 3613 3614 3615 3616 3617 3618 3619 3620 3621 3622 3623 3624 3625 3626 3627 3628 3629 3630 3631 3632 3633 3634 3635 3636 3637 3638 3639 3640 3641 3642 3643 3644 3645 3646 3647 3648 3649 3650 3651 3652 3653 3654 3655 3656 3657 3658 3659 3660 3661 3662 3663 3664 3665 3666 3667 3668 3669 3670 3671 3672 3673 3674 3675 3676 3677 3678 3679 3680 3681 3682 3683 3684 3685 3686 3687 3688 3689 3690 3691 3692 3693 3694 3695 3696 3697 3698 3699 3700 3701 3702 3703 3704 3705 3706 3707 3708 3709 3710 3711 3712 3713 3714 3715 3716 3717 3718 3719 3720 3721 3722 3723 3724 3725 3726 3727 3728 3729 3730 3731 3732 3733 3734 3735 3736 3737 3738 3739 3740 3741 3742 3743 3744 3745 3746 3747 3748 3749 3750 3751 3752 3753 3754 3755 3756 3757 3758 3759 3760 3761 3762 3763 3764 3765 3766 3767 3768 3769 3770 3771 3772 3773 3774 3775 3776 3777 3778 3779 3780 3781 3782 3783 3784 3785 3786 3787 3788 3789 3790 3791 3792 3793 3794 3795 3796 3797 3798 3799 3800 3801 3802 3803 3804 3805 3806 3807 3808 3809 3810 3811 3812 3813 3814 3815 3816 3817 3818 3819 3820 3821 3822 3823 3824 3825 3826 3827 3828 3829 3830 3831 3832 3833 3834 3835 3836 3837 3838 3839 3840 3841 3842 3843 3844 3845 3846 3847 3848 3849 3850 3851 3852 3853 3854 3855 3856 3857 3858 3859 3860 3861 3862 3863 3864 3865 3866 3867 3868 3869 3870 3871 3872 3873 3874 3875 3876 3877 3878 3879 3880 3881 3882 3883 3884 3885 3886 3887 3888 3889 3890 3891 3892 3893 3894 3895 3896 3897 3898 3899 3900 3901 3902 3903 3904 3905 3906 3907 3908 3909 3910 3911 3912 3913 3914 3915 3916 3917 3918 3919 3920 3921 3922 3923 3924 3925 3926 3927 3928 3929 3930 3931 3932 3933 3934 3935 3936 3937 3938 3939 3940 3941 3942 3943 3944 3945 3946 3947 3948 3949 3950 3951 3952 3953 3954 3955 3956 3957 3958 3959 3960 3961 3962 3963 3964 3965 3966 3967 3968 3969 3970 3971 3972 3973 3974 3975 3976 3977 3978 3979 3980 3981 3982 3983 3984 3985 3986 3987 3988 3989 3990 3991 3992 3993 3994 3995 3996 3997 3998 3999 4000 4001 4002 4003 4004 4005 4006 4007 4008 4009 4010 4011 4012 4013 4014 4015 4016 4017 4018 4019 4020 4021 4022 4023 4024 4025 4026 4027 4028 4029 4030 4031 4032 4033 4034 4035 4036 4037 4038 4039 4040 4041 4042 4043 4044 4045 4046 4047 4048 4049 4050 4051 4052 4053 4054 4055 4056 4057 4058 4059 4060 4061 4062 4063 4064 4065 4066 4067 4068 4069 4070 4071 4072 4073 4074 4075 4076 4077 4078 4079 4080 4081 4082 4083 4084 4085 4086 4087 4088 4089 4090 4091 4092 4093 4094 4095 4096 4097 4098 4099 4100 4101 4102 4103 4104 4105 4106 4107 4108 4109 4110 4111 4112 4113 4114 4115 4116 4117 4118 4119 4120 4121 4122 4123 4124 4125 4126 4127 4128 4129 4130 4131 4132 4133 4134 4135 4136 4137 4138 4139 4140 4141 4142 4143 4144 4145 4146 4147 4148 4149 4150 4151 4152 4153 4154 4155 4156 4157 4158 4159 4160 4161 4162 4163 4164 4165 4166 4167 4168 4169 4170 4171 4172 4173 4174 4175 4176 4177 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* Google Analytics API
*
* Views and manages your Google Analytics data.
*
* @example
* var google = require('googleapis');
* var analytics = google.analytics('v3');
*
* @namespace analytics
* @type {Function}
* @version v3
* @variation v3
* @param {object=} options Options for Analytics
*/
function Analytics(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.data = {
ga: {
/**
* analytics.data.ga.get
*
* @desc Returns Analytics data for a view (profile).
*
* @alias analytics.data.ga.get
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string=} params.dimensions A comma-separated list of Analytics dimensions. E.g., 'ga:browser,ga:city'.
* @param {string} params.end-date End date for fetching Analytics data. Request can should specify an end date formatted as YYYY-MM-DD, or as a relative date (e.g., today, yesterday, or 7daysAgo). The default value is yesterday.
* @param {string=} params.filters A comma-separated list of dimension or metric filters to be applied to Analytics data.
* @param {string} params.ids Unique table ID for retrieving Analytics data. Table ID is of the form ga:XXXX, where XXXX is the Analytics view (profile) ID.
* @param {boolean=} params.include-empty-rows The response will include empty rows if this parameter is set to true, the default is true
* @param {integer=} params.max-results The maximum number of entries to include in this feed.
* @param {string} params.metrics A comma-separated list of Analytics metrics. E.g., 'ga:sessions,ga:pageviews'. At least one metric must be specified.
* @param {string=} params.output The selected format for the response. Default format is JSON.
* @param {string=} params.samplingLevel The desired sampling level.
* @param {string=} params.segment An Analytics segment to be applied to data.
* @param {string=} params.sort A comma-separated list of dimensions or metrics that determine the sort order for Analytics data.
* @param {string} params.start-date Start date for fetching Analytics data. Requests can specify a start date formatted as YYYY-MM-DD, or as a relative date (e.g., today, yesterday, or 7daysAgo). The default value is 7daysAgo.
* @param {integer=} params.start-index An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/data/ga',
method: 'GET'
}, options),
params: params,
requiredParams: ['ids', 'start-date', 'end-date', 'metrics'],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
},
mcf: {
/**
* analytics.data.mcf.get
*
* @desc Returns Analytics Multi-Channel Funnels data for a view (profile).
*
* @alias analytics.data.mcf.get
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string=} params.dimensions A comma-separated list of Multi-Channel Funnels dimensions. E.g., 'mcf:source,mcf:medium'.
* @param {string} params.end-date End date for fetching Analytics data. Requests can specify a start date formatted as YYYY-MM-DD, or as a relative date (e.g., today, yesterday, or 7daysAgo). The default value is 7daysAgo.
* @param {string=} params.filters A comma-separated list of dimension or metric filters to be applied to the Analytics data.
* @param {string} params.ids Unique table ID for retrieving Analytics data. Table ID is of the form ga:XXXX, where XXXX is the Analytics view (profile) ID.
* @param {integer=} params.max-results The maximum number of entries to include in this feed.
* @param {string} params.metrics A comma-separated list of Multi-Channel Funnels metrics. E.g., 'mcf:totalConversions,mcf:totalConversionValue'. At least one metric must be specified.
* @param {string=} params.samplingLevel The desired sampling level.
* @param {string=} params.sort A comma-separated list of dimensions or metrics that determine the sort order for the Analytics data.
* @param {string} params.start-date Start date for fetching Analytics data. Requests can specify a start date formatted as YYYY-MM-DD, or as a relative date (e.g., today, yesterday, or 7daysAgo). The default value is 7daysAgo.
* @param {integer=} params.start-index An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/data/mcf',
method: 'GET'
}, options),
params: params,
requiredParams: ['ids', 'start-date', 'end-date', 'metrics'],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
},
realtime: {
/**
* analytics.data.realtime.get
*
* @desc Returns real time data for a view (profile).
*
* @alias analytics.data.realtime.get
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string=} params.dimensions A comma-separated list of real time dimensions. E.g., 'rt:medium,rt:city'.
* @param {string=} params.filters A comma-separated list of dimension or metric filters to be applied to real time data.
* @param {string} params.ids Unique table ID for retrieving real time data. Table ID is of the form ga:XXXX, where XXXX is the Analytics view (profile) ID.
* @param {integer=} params.max-results The maximum number of entries to include in this feed.
* @param {string} params.metrics A comma-separated list of real time metrics. E.g., 'rt:activeUsers'. At least one metric must be specified.
* @param {string=} params.sort A comma-separated list of dimensions or metrics that determine the sort order for real time data.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/data/realtime',
method: 'GET'
}, options),
params: params,
requiredParams: ['ids', 'metrics'],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
}
};
self.management = {
accountSummaries: {
/**
* analytics.management.accountSummaries.list
*
* @desc Lists account summaries (lightweight tree comprised of accounts/properties/profiles) to which the user has access.
*
* @alias analytics.management.accountSummaries.list
* @memberOf! analytics(v3)
*
* @param {object=} params Parameters for request
* @param {integer=} params.max-results The maximum number of account summaries to include in this response, where the largest acceptable value is 1000.
* @param {integer=} params.start-index An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accountSummaries',
method: 'GET'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
},
accountUserLinks: {
/**
* analytics.management.accountUserLinks.delete
*
* @desc Removes a user from the given account.
*
* @alias analytics.management.accountUserLinks.delete
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to delete the user link for.
* @param {string} params.linkId Link ID to delete the user link for.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/entityUserLinks/{linkId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['accountId', 'linkId'],
pathParams: ['accountId', 'linkId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.accountUserLinks.insert
*
* @desc Adds a new user to the given account.
*
* @alias analytics.management.accountUserLinks.insert
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to create the user link for.
* @param {analytics(v3).EntityUserLink} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/entityUserLinks',
method: 'POST'
}, options),
params: params,
requiredParams: ['accountId'],
pathParams: ['accountId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.accountUserLinks.list
*
* @desc Lists account-user links for a given account.
*
* @alias analytics.management.accountUserLinks.list
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to retrieve the user links for.
* @param {integer=} params.max-results The maximum number of account-user links to include in this response.
* @param {integer=} params.start-index An index of the first account-user link to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/entityUserLinks',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId'],
pathParams: ['accountId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.accountUserLinks.update
*
* @desc Updates permissions for an existing user on the given account.
*
* @alias analytics.management.accountUserLinks.update
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to update the account-user link for.
* @param {string} params.linkId Link ID to update the account-user link for.
* @param {analytics(v3).EntityUserLink} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/entityUserLinks/{linkId}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['accountId', 'linkId'],
pathParams: ['accountId', 'linkId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
accounts: {
/**
* analytics.management.accounts.list
*
* @desc Lists all accounts to which the user has access.
*
* @alias analytics.management.accounts.list
* @memberOf! analytics(v3)
*
* @param {object=} params Parameters for request
* @param {integer=} params.max-results The maximum number of accounts to include in this response.
* @param {integer=} params.start-index An index of the first account to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts',
method: 'GET'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
},
customDataSources: {
/**
* analytics.management.customDataSources.list
*
* @desc List custom data sources to which the user has access.
*
* @alias analytics.management.customDataSources.list
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account Id for the custom data sources to retrieve.
* @param {integer=} params.max-results The maximum number of custom data sources to include in this response.
* @param {integer=} params.start-index A 1-based index of the first custom data source to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.
* @param {string} params.webPropertyId Web property Id for the custom data sources to retrieve.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/customDataSources',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId'],
pathParams: ['accountId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
customDimensions: {
/**
* analytics.management.customDimensions.get
*
* @desc Get a custom dimension to which the user has access.
*
* @alias analytics.management.customDimensions.get
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID for the custom dimension to retrieve.
* @param {string} params.customDimensionId The ID of the custom dimension to retrieve.
* @param {string} params.webPropertyId Web property ID for the custom dimension to retrieve.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/customDimensions/{customDimensionId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'customDimensionId'],
pathParams: ['accountId', 'customDimensionId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.customDimensions.insert
*
* @desc Create a new custom dimension.
*
* @alias analytics.management.customDimensions.insert
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID for the custom dimension to create.
* @param {string} params.webPropertyId Web property ID for the custom dimension to create.
* @param {analytics(v3).CustomDimension} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/customDimensions',
method: 'POST'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId'],
pathParams: ['accountId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.customDimensions.list
*
* @desc Lists custom dimensions to which the user has access.
*
* @alias analytics.management.customDimensions.list
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID for the custom dimensions to retrieve.
* @param {integer=} params.max-results The maximum number of custom dimensions to include in this response.
* @param {integer=} params.start-index An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.
* @param {string} params.webPropertyId Web property ID for the custom dimensions to retrieve.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/customDimensions',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId'],
pathParams: ['accountId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.customDimensions.patch
*
* @desc Updates an existing custom dimension. This method supports patch semantics.
*
* @alias analytics.management.customDimensions.patch
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID for the custom dimension to update.
* @param {string} params.customDimensionId Custom dimension ID for the custom dimension to update.
* @param {boolean=} params.ignoreCustomDataSourceLinks Force the update and ignore any warnings related to the custom dimension being linked to a custom data source / data set.
* @param {string} params.webPropertyId Web property ID for the custom dimension to update.
* @param {analytics(v3).CustomDimension} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/customDimensions/{customDimensionId}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'customDimensionId'],
pathParams: ['accountId', 'customDimensionId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.customDimensions.update
*
* @desc Updates an existing custom dimension.
*
* @alias analytics.management.customDimensions.update
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID for the custom dimension to update.
* @param {string} params.customDimensionId Custom dimension ID for the custom dimension to update.
* @param {boolean=} params.ignoreCustomDataSourceLinks Force the update and ignore any warnings related to the custom dimension being linked to a custom data source / data set.
* @param {string} params.webPropertyId Web property ID for the custom dimension to update.
* @param {analytics(v3).CustomDimension} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/customDimensions/{customDimensionId}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'customDimensionId'],
pathParams: ['accountId', 'customDimensionId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
customMetrics: {
/**
* analytics.management.customMetrics.get
*
* @desc Get a custom metric to which the user has access.
*
* @alias analytics.management.customMetrics.get
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID for the custom metric to retrieve.
* @param {string} params.customMetricId The ID of the custom metric to retrieve.
* @param {string} params.webPropertyId Web property ID for the custom metric to retrieve.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/customMetrics/{customMetricId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'customMetricId'],
pathParams: ['accountId', 'customMetricId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.customMetrics.insert
*
* @desc Create a new custom metric.
*
* @alias analytics.management.customMetrics.insert
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID for the custom metric to create.
* @param {string} params.webPropertyId Web property ID for the custom dimension to create.
* @param {analytics(v3).CustomMetric} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/customMetrics',
method: 'POST'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId'],
pathParams: ['accountId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.customMetrics.list
*
* @desc Lists custom metrics to which the user has access.
*
* @alias analytics.management.customMetrics.list
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID for the custom metrics to retrieve.
* @param {integer=} params.max-results The maximum number of custom metrics to include in this response.
* @param {integer=} params.start-index An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.
* @param {string} params.webPropertyId Web property ID for the custom metrics to retrieve.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/customMetrics',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId'],
pathParams: ['accountId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.customMetrics.patch
*
* @desc Updates an existing custom metric. This method supports patch semantics.
*
* @alias analytics.management.customMetrics.patch
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID for the custom metric to update.
* @param {string} params.customMetricId Custom metric ID for the custom metric to update.
* @param {boolean=} params.ignoreCustomDataSourceLinks Force the update and ignore any warnings related to the custom metric being linked to a custom data source / data set.
* @param {string} params.webPropertyId Web property ID for the custom metric to update.
* @param {analytics(v3).CustomMetric} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/customMetrics/{customMetricId}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'customMetricId'],
pathParams: ['accountId', 'customMetricId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.customMetrics.update
*
* @desc Updates an existing custom metric.
*
* @alias analytics.management.customMetrics.update
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID for the custom metric to update.
* @param {string} params.customMetricId Custom metric ID for the custom metric to update.
* @param {boolean=} params.ignoreCustomDataSourceLinks Force the update and ignore any warnings related to the custom metric being linked to a custom data source / data set.
* @param {string} params.webPropertyId Web property ID for the custom metric to update.
* @param {analytics(v3).CustomMetric} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/customMetrics/{customMetricId}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'customMetricId'],
pathParams: ['accountId', 'customMetricId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
experiments: {
/**
* analytics.management.experiments.delete
*
* @desc Delete an experiment.
*
* @alias analytics.management.experiments.delete
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to which the experiment belongs
* @param {string} params.experimentId ID of the experiment to delete
* @param {string} params.profileId View (Profile) ID to which the experiment belongs
* @param {string} params.webPropertyId Web property ID to which the experiment belongs
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/experiments/{experimentId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'profileId', 'experimentId'],
pathParams: ['accountId', 'experimentId', 'profileId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.experiments.get
*
* @desc Returns an experiment to which the user has access.
*
* @alias analytics.management.experiments.get
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to retrieve the experiment for.
* @param {string} params.experimentId Experiment ID to retrieve the experiment for.
* @param {string} params.profileId View (Profile) ID to retrieve the experiment for.
* @param {string} params.webPropertyId Web property ID to retrieve the experiment for.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/experiments/{experimentId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'profileId', 'experimentId'],
pathParams: ['accountId', 'experimentId', 'profileId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.experiments.insert
*
* @desc Create a new experiment.
*
* @alias analytics.management.experiments.insert
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to create the experiment for.
* @param {string} params.profileId View (Profile) ID to create the experiment for.
* @param {string} params.webPropertyId Web property ID to create the experiment for.
* @param {analytics(v3).Experiment} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/experiments',
method: 'POST'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'profileId'],
pathParams: ['accountId', 'profileId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.experiments.list
*
* @desc Lists experiments to which the user has access.
*
* @alias analytics.management.experiments.list
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to retrieve experiments for.
* @param {integer=} params.max-results The maximum number of experiments to include in this response.
* @param {string} params.profileId View (Profile) ID to retrieve experiments for.
* @param {integer=} params.start-index An index of the first experiment to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.
* @param {string} params.webPropertyId Web property ID to retrieve experiments for.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/experiments',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'profileId'],
pathParams: ['accountId', 'profileId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.experiments.patch
*
* @desc Update an existing experiment. This method supports patch semantics.
*
* @alias analytics.management.experiments.patch
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID of the experiment to update.
* @param {string} params.experimentId Experiment ID of the experiment to update.
* @param {string} params.profileId View (Profile) ID of the experiment to update.
* @param {string} params.webPropertyId Web property ID of the experiment to update.
* @param {analytics(v3).Experiment} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/experiments/{experimentId}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'profileId', 'experimentId'],
pathParams: ['accountId', 'experimentId', 'profileId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.experiments.update
*
* @desc Update an existing experiment.
*
* @alias analytics.management.experiments.update
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID of the experiment to update.
* @param {string} params.experimentId Experiment ID of the experiment to update.
* @param {string} params.profileId View (Profile) ID of the experiment to update.
* @param {string} params.webPropertyId Web property ID of the experiment to update.
* @param {analytics(v3).Experiment} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/experiments/{experimentId}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'profileId', 'experimentId'],
pathParams: ['accountId', 'experimentId', 'profileId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
filters: {
/**
* analytics.management.filters.delete
*
* @desc Delete a filter.
*
* @alias analytics.management.filters.delete
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to delete the filter for.
* @param {string} params.filterId ID of the filter to be deleted.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/filters/{filterId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['accountId', 'filterId'],
pathParams: ['accountId', 'filterId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.filters.get
*
* @desc Returns a filters to which the user has access.
*
* @alias analytics.management.filters.get
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to retrieve filters for.
* @param {string} params.filterId Filter ID to retrieve filters for.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/filters/{filterId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'filterId'],
pathParams: ['accountId', 'filterId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.filters.insert
*
* @desc Create a new filter.
*
* @alias analytics.management.filters.insert
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to create filter for.
* @param {analytics(v3).Filter} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/filters',
method: 'POST'
}, options),
params: params,
requiredParams: ['accountId'],
pathParams: ['accountId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.filters.list
*
* @desc Lists all filters for an account
*
* @alias analytics.management.filters.list
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to retrieve filters for.
* @param {integer=} params.max-results The maximum number of filters to include in this response.
* @param {integer=} params.start-index An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/filters',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId'],
pathParams: ['accountId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.filters.patch
*
* @desc Updates an existing filter. This method supports patch semantics.
*
* @alias analytics.management.filters.patch
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to which the filter belongs.
* @param {string} params.filterId ID of the filter to be updated.
* @param {analytics(v3).Filter} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/filters/{filterId}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['accountId', 'filterId'],
pathParams: ['accountId', 'filterId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.filters.update
*
* @desc Updates an existing filter.
*
* @alias analytics.management.filters.update
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to which the filter belongs.
* @param {string} params.filterId ID of the filter to be updated.
* @param {analytics(v3).Filter} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/filters/{filterId}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['accountId', 'filterId'],
pathParams: ['accountId', 'filterId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
goals: {
/**
* analytics.management.goals.get
*
* @desc Gets a goal to which the user has access.
*
* @alias analytics.management.goals.get
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to retrieve the goal for.
* @param {string} params.goalId Goal ID to retrieve the goal for.
* @param {string} params.profileId View (Profile) ID to retrieve the goal for.
* @param {string} params.webPropertyId Web property ID to retrieve the goal for.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/goals/{goalId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'profileId', 'goalId'],
pathParams: ['accountId', 'goalId', 'profileId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.goals.insert
*
* @desc Create a new goal.
*
* @alias analytics.management.goals.insert
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to create the goal for.
* @param {string} params.profileId View (Profile) ID to create the goal for.
* @param {string} params.webPropertyId Web property ID to create the goal for.
* @param {analytics(v3).Goal} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/goals',
method: 'POST'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'profileId'],
pathParams: ['accountId', 'profileId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.goals.list
*
* @desc Lists goals to which the user has access.
*
* @alias analytics.management.goals.list
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to retrieve goals for. Can either be a specific account ID or '~all', which refers to all the accounts that user has access to.
* @param {integer=} params.max-results The maximum number of goals to include in this response.
* @param {string} params.profileId View (Profile) ID to retrieve goals for. Can either be a specific view (profile) ID or '~all', which refers to all the views (profiles) that user has access to.
* @param {integer=} params.start-index An index of the first goal to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.
* @param {string} params.webPropertyId Web property ID to retrieve goals for. Can either be a specific web property ID or '~all', which refers to all the web properties that user has access to.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/goals',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'profileId'],
pathParams: ['accountId', 'profileId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.goals.patch
*
* @desc Updates an existing goal. This method supports patch semantics.
*
* @alias analytics.management.goals.patch
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to update the goal.
* @param {string} params.goalId Index of the goal to be updated.
* @param {string} params.profileId View (Profile) ID to update the goal.
* @param {string} params.webPropertyId Web property ID to update the goal.
* @param {analytics(v3).Goal} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/goals/{goalId}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'profileId', 'goalId'],
pathParams: ['accountId', 'goalId', 'profileId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.goals.update
*
* @desc Updates an existing goal.
*
* @alias analytics.management.goals.update
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to update the goal.
* @param {string} params.goalId Index of the goal to be updated.
* @param {string} params.profileId View (Profile) ID to update the goal.
* @param {string} params.webPropertyId Web property ID to update the goal.
* @param {analytics(v3).Goal} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/goals/{goalId}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'profileId', 'goalId'],
pathParams: ['accountId', 'goalId', 'profileId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
profileFilterLinks: {
/**
* analytics.management.profileFilterLinks.delete
*
* @desc Delete a profile filter link.
*
* @alias analytics.management.profileFilterLinks.delete
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to which the profile filter link belongs.
* @param {string} params.linkId ID of the profile filter link to delete.
* @param {string} params.profileId Profile ID to which the filter link belongs.
* @param {string} params.webPropertyId Web property Id to which the profile filter link belongs.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/profileFilterLinks/{linkId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'profileId', 'linkId'],
pathParams: ['accountId', 'linkId', 'profileId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.profileFilterLinks.get
*
* @desc Returns a single profile filter link.
*
* @alias analytics.management.profileFilterLinks.get
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to retrieve profile filter link for.
* @param {string} params.linkId ID of the profile filter link.
* @param {string} params.profileId Profile ID to retrieve filter link for.
* @param {string} params.webPropertyId Web property Id to retrieve profile filter link for.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/profileFilterLinks/{linkId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'profileId', 'linkId'],
pathParams: ['accountId', 'linkId', 'profileId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.profileFilterLinks.insert
*
* @desc Create a new profile filter link.
*
* @alias analytics.management.profileFilterLinks.insert
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to create profile filter link for.
* @param {string} params.profileId Profile ID to create filter link for.
* @param {string} params.webPropertyId Web property Id to create profile filter link for.
* @param {analytics(v3).ProfileFilterLink} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/profileFilterLinks',
method: 'POST'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'profileId'],
pathParams: ['accountId', 'profileId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.profileFilterLinks.list
*
* @desc Lists all profile filter links for a profile.
*
* @alias analytics.management.profileFilterLinks.list
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to retrieve profile filter links for.
* @param {integer=} params.max-results The maximum number of profile filter links to include in this response.
* @param {string} params.profileId Profile ID to retrieve filter links for. Can either be a specific profile ID or '~all', which refers to all the profiles that user has access to.
* @param {integer=} params.start-index An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.
* @param {string} params.webPropertyId Web property Id for profile filter links for. Can either be a specific web property ID or '~all', which refers to all the web properties that user has access to.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/profileFilterLinks',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'profileId'],
pathParams: ['accountId', 'profileId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.profileFilterLinks.patch
*
* @desc Update an existing profile filter link. This method supports patch semantics.
*
* @alias analytics.management.profileFilterLinks.patch
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to which profile filter link belongs.
* @param {string} params.linkId ID of the profile filter link to be updated.
* @param {string} params.profileId Profile ID to which filter link belongs
* @param {string} params.webPropertyId Web property Id to which profile filter link belongs
* @param {analytics(v3).ProfileFilterLink} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/profileFilterLinks/{linkId}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'profileId', 'linkId'],
pathParams: ['accountId', 'linkId', 'profileId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.profileFilterLinks.update
*
* @desc Update an existing profile filter link.
*
* @alias analytics.management.profileFilterLinks.update
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to which profile filter link belongs.
* @param {string} params.linkId ID of the profile filter link to be updated.
* @param {string} params.profileId Profile ID to which filter link belongs
* @param {string} params.webPropertyId Web property Id to which profile filter link belongs
* @param {analytics(v3).ProfileFilterLink} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/profileFilterLinks/{linkId}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'profileId', 'linkId'],
pathParams: ['accountId', 'linkId', 'profileId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
profileUserLinks: {
/**
* analytics.management.profileUserLinks.delete
*
* @desc Removes a user from the given view (profile).
*
* @alias analytics.management.profileUserLinks.delete
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to delete the user link for.
* @param {string} params.linkId Link ID to delete the user link for.
* @param {string} params.profileId View (Profile) ID to delete the user link for.
* @param {string} params.webPropertyId Web Property ID to delete the user link for.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/entityUserLinks/{linkId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'profileId', 'linkId'],
pathParams: ['accountId', 'linkId', 'profileId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.profileUserLinks.insert
*
* @desc Adds a new user to the given view (profile).
*
* @alias analytics.management.profileUserLinks.insert
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to create the user link for.
* @param {string} params.profileId View (Profile) ID to create the user link for.
* @param {string} params.webPropertyId Web Property ID to create the user link for.
* @param {analytics(v3).EntityUserLink} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/entityUserLinks',
method: 'POST'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'profileId'],
pathParams: ['accountId', 'profileId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.profileUserLinks.list
*
* @desc Lists profile-user links for a given view (profile).
*
* @alias analytics.management.profileUserLinks.list
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID which the given view (profile) belongs to.
* @param {integer=} params.max-results The maximum number of profile-user links to include in this response.
* @param {string} params.profileId View (Profile) ID to retrieve the profile-user links for. Can either be a specific profile ID or '~all', which refers to all the profiles that user has access to.
* @param {integer=} params.start-index An index of the first profile-user link to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.
* @param {string} params.webPropertyId Web Property ID which the given view (profile) belongs to. Can either be a specific web property ID or '~all', which refers to all the web properties that user has access to.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/entityUserLinks',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'profileId'],
pathParams: ['accountId', 'profileId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.profileUserLinks.update
*
* @desc Updates permissions for an existing user on the given view (profile).
*
* @alias analytics.management.profileUserLinks.update
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to update the user link for.
* @param {string} params.linkId Link ID to update the user link for.
* @param {string} params.profileId View (Profile ID) to update the user link for.
* @param {string} params.webPropertyId Web Property ID to update the user link for.
* @param {analytics(v3).EntityUserLink} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/entityUserLinks/{linkId}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'profileId', 'linkId'],
pathParams: ['accountId', 'linkId', 'profileId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
profiles: {
/**
* analytics.management.profiles.delete
*
* @desc Deletes a view (profile).
*
* @alias analytics.management.profiles.delete
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to delete the view (profile) for.
* @param {string} params.profileId ID of the view (profile) to be deleted.
* @param {string} params.webPropertyId Web property ID to delete the view (profile) for.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'profileId'],
pathParams: ['accountId', 'profileId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.profiles.get
*
* @desc Gets a view (profile) to which the user has access.
*
* @alias analytics.management.profiles.get
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to retrieve the view (profile) for.
* @param {string} params.profileId View (Profile) ID to retrieve the view (profile) for.
* @param {string} params.webPropertyId Web property ID to retrieve the view (profile) for.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'profileId'],
pathParams: ['accountId', 'profileId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.profiles.insert
*
* @desc Create a new view (profile).
*
* @alias analytics.management.profiles.insert
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to create the view (profile) for.
* @param {string} params.webPropertyId Web property ID to create the view (profile) for.
* @param {analytics(v3).Profile} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles',
method: 'POST'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId'],
pathParams: ['accountId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.profiles.list
*
* @desc Lists views (profiles) to which the user has access.
*
* @alias analytics.management.profiles.list
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID for the view (profiles) to retrieve. Can either be a specific account ID or '~all', which refers to all the accounts to which the user has access.
* @param {integer=} params.max-results The maximum number of views (profiles) to include in this response.
* @param {integer=} params.start-index An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.
* @param {string} params.webPropertyId Web property ID for the views (profiles) to retrieve. Can either be a specific web property ID or '~all', which refers to all the web properties to which the user has access.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId'],
pathParams: ['accountId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.profiles.patch
*
* @desc Updates an existing view (profile). This method supports patch semantics.
*
* @alias analytics.management.profiles.patch
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to which the view (profile) belongs
* @param {string} params.profileId ID of the view (profile) to be updated.
* @param {string} params.webPropertyId Web property ID to which the view (profile) belongs
* @param {analytics(v3).Profile} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'profileId'],
pathParams: ['accountId', 'profileId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.profiles.update
*
* @desc Updates an existing view (profile).
*
* @alias analytics.management.profiles.update
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to which the view (profile) belongs
* @param {string} params.profileId ID of the view (profile) to be updated.
* @param {string} params.webPropertyId Web property ID to which the view (profile) belongs
* @param {analytics(v3).Profile} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'profileId'],
pathParams: ['accountId', 'profileId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
remarketingAudience: {
/**
* analytics.management.remarketingAudience.delete
*
* @desc Delete a remarketing audience.
*
* @alias analytics.management.remarketingAudience.delete
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to which the remarketing audience belongs.
* @param {string} params.remarketingAudienceId The ID of the remarketing audience to delete.
* @param {string} params.webPropertyId Web property ID to which the remarketing audience belongs.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences/{remarketingAudienceId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'remarketingAudienceId'],
pathParams: ['accountId', 'remarketingAudienceId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.remarketingAudience.get
*
* @desc Gets a remarketing audience to which the user has access.
*
* @alias analytics.management.remarketingAudience.get
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId The account ID of the remarketing audience to retrieve.
* @param {string} params.remarketingAudienceId The ID of the remarketing audience to retrieve.
* @param {string} params.webPropertyId The web property ID of the remarketing audience to retrieve.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences/{remarketingAudienceId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'remarketingAudienceId'],
pathParams: ['accountId', 'remarketingAudienceId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.remarketingAudience.insert
*
* @desc Creates a new remarketing audience.
*
* @alias analytics.management.remarketingAudience.insert
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId The account ID for which to create the remarketing audience.
* @param {string} params.webPropertyId Web property ID for which to create the remarketing audience.
* @param {analytics(v3).RemarketingAudience} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences',
method: 'POST'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId'],
pathParams: ['accountId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.remarketingAudience.list
*
* @desc Lists remarketing audiences to which the user has access.
*
* @alias analytics.management.remarketingAudience.list
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId The account ID of the remarketing audiences to retrieve.
* @param {integer=} params.max-results The maximum number of remarketing audiences to include in this response.
* @param {integer=} params.start-index An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.
* @param {string=} params.type
* @param {string} params.webPropertyId The web property ID of the remarketing audiences to retrieve.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId'],
pathParams: ['accountId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.remarketingAudience.patch
*
* @desc Updates an existing remarketing audience. This method supports patch semantics.
*
* @alias analytics.management.remarketingAudience.patch
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId The account ID of the remarketing audience to update.
* @param {string} params.remarketingAudienceId The ID of the remarketing audience to update.
* @param {string} params.webPropertyId The web property ID of the remarketing audience to update.
* @param {analytics(v3).RemarketingAudience} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences/{remarketingAudienceId}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'remarketingAudienceId'],
pathParams: ['accountId', 'remarketingAudienceId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.remarketingAudience.update
*
* @desc Updates an existing remarketing audience.
*
* @alias analytics.management.remarketingAudience.update
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId The account ID of the remarketing audience to update.
* @param {string} params.remarketingAudienceId The ID of the remarketing audience to update.
* @param {string} params.webPropertyId The web property ID of the remarketing audience to update.
* @param {analytics(v3).RemarketingAudience} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences/{remarketingAudienceId}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'remarketingAudienceId'],
pathParams: ['accountId', 'remarketingAudienceId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
segments: {
/**
* analytics.management.segments.list
*
* @desc Lists segments to which the user has access.
*
* @alias analytics.management.segments.list
* @memberOf! analytics(v3)
*
* @param {object=} params Parameters for request
* @param {integer=} params.max-results The maximum number of segments to include in this response.
* @param {integer=} params.start-index An index of the first segment to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/segments',
method: 'GET'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
},
unsampledReports: {
/**
* analytics.management.unsampledReports.delete
*
* @desc Deletes an unsampled report.
*
* @alias analytics.management.unsampledReports.delete
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to delete the unsampled report for.
* @param {string} params.profileId View (Profile) ID to delete the unsampled report for.
* @param {string} params.unsampledReportId ID of the unsampled report to be deleted.
* @param {string} params.webPropertyId Web property ID to delete the unsampled reports for.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/unsampledReports/{unsampledReportId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'profileId', 'unsampledReportId'],
pathParams: ['accountId', 'profileId', 'unsampledReportId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.unsampledReports.get
*
* @desc Returns a single unsampled report.
*
* @alias analytics.management.unsampledReports.get
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to retrieve unsampled report for.
* @param {string} params.profileId View (Profile) ID to retrieve unsampled report for.
* @param {string} params.unsampledReportId ID of the unsampled report to retrieve.
* @param {string} params.webPropertyId Web property ID to retrieve unsampled reports for.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/unsampledReports/{unsampledReportId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'profileId', 'unsampledReportId'],
pathParams: ['accountId', 'profileId', 'unsampledReportId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.unsampledReports.insert
*
* @desc Create a new unsampled report.
*
* @alias analytics.management.unsampledReports.insert
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to create the unsampled report for.
* @param {string} params.profileId View (Profile) ID to create the unsampled report for.
* @param {string} params.webPropertyId Web property ID to create the unsampled report for.
* @param {analytics(v3).UnsampledReport} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/unsampledReports',
method: 'POST'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'profileId'],
pathParams: ['accountId', 'profileId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.unsampledReports.list
*
* @desc Lists unsampled reports to which the user has access.
*
* @alias analytics.management.unsampledReports.list
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to retrieve unsampled reports for. Must be a specific account ID, ~all is not supported.
* @param {integer=} params.max-results The maximum number of unsampled reports to include in this response.
* @param {string} params.profileId View (Profile) ID to retrieve unsampled reports for. Must be a specific view (profile) ID, ~all is not supported.
* @param {integer=} params.start-index An index of the first unsampled report to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.
* @param {string} params.webPropertyId Web property ID to retrieve unsampled reports for. Must be a specific web property ID, ~all is not supported.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/unsampledReports',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'profileId'],
pathParams: ['accountId', 'profileId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
uploads: {
/**
* analytics.management.uploads.deleteUploadData
*
* @desc Delete data associated with a previous upload.
*
* @alias analytics.management.uploads.deleteUploadData
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account Id for the uploads to be deleted.
* @param {string} params.customDataSourceId Custom data source Id for the uploads to be deleted.
* @param {string} params.webPropertyId Web property Id for the uploads to be deleted.
* @param {analytics(v3).AnalyticsDataimportDeleteUploadDataRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
deleteUploadData: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/customDataSources/{customDataSourceId}/deleteUploadData',
method: 'POST'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'customDataSourceId'],
pathParams: ['accountId', 'customDataSourceId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.uploads.get
*
* @desc List uploads to which the user has access.
*
* @alias analytics.management.uploads.get
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account Id for the upload to retrieve.
* @param {string} params.customDataSourceId Custom data source Id for upload to retrieve.
* @param {string} params.uploadId Upload Id to retrieve.
* @param {string} params.webPropertyId Web property Id for the upload to retrieve.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/customDataSources/{customDataSourceId}/uploads/{uploadId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'customDataSourceId', 'uploadId'],
pathParams: ['accountId', 'customDataSourceId', 'uploadId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.uploads.list
*
* @desc List uploads to which the user has access.
*
* @alias analytics.management.uploads.list
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account Id for the uploads to retrieve.
* @param {string} params.customDataSourceId Custom data source Id for uploads to retrieve.
* @param {integer=} params.max-results The maximum number of uploads to include in this response.
* @param {integer=} params.start-index A 1-based index of the first upload to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.
* @param {string} params.webPropertyId Web property Id for the uploads to retrieve.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/customDataSources/{customDataSourceId}/uploads',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'customDataSourceId'],
pathParams: ['accountId', 'customDataSourceId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.uploads.uploadData
*
* @desc Upload data for a custom data source.
*
* @alias analytics.management.uploads.uploadData
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account Id associated with the upload.
* @param {string} params.customDataSourceId Custom data source Id to which the data being uploaded belongs.
* @param {string} params.webPropertyId Web property UA-string associated with the upload.
* @param {object} params.media Media object
* @param {string} params.media.mimeType Media mime-type
* @param {string|object} params.media.body Media body contents
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
uploadData: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/customDataSources/{customDataSourceId}/uploads',
method: 'POST'
}, options),
params: params,
mediaUrl: 'https://www.googleapis.com/upload/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/customDataSources/{customDataSourceId}/uploads',
requiredParams: ['accountId', 'webPropertyId', 'customDataSourceId'],
pathParams: ['accountId', 'customDataSourceId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
webPropertyAdWordsLinks: {
/**
* analytics.management.webPropertyAdWordsLinks.delete
*
* @desc Deletes a web property-AdWords link.
*
* @alias analytics.management.webPropertyAdWordsLinks.delete
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId ID of the account which the given web property belongs to.
* @param {string} params.webPropertyAdWordsLinkId Web property AdWords link ID.
* @param {string} params.webPropertyId Web property ID to delete the AdWords link for.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/entityAdWordsLinks/{webPropertyAdWordsLinkId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'webPropertyAdWordsLinkId'],
pathParams: ['accountId', 'webPropertyAdWordsLinkId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.webPropertyAdWordsLinks.get
*
* @desc Returns a web property-AdWords link to which the user has access.
*
* @alias analytics.management.webPropertyAdWordsLinks.get
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId ID of the account which the given web property belongs to.
* @param {string} params.webPropertyAdWordsLinkId Web property-AdWords link ID.
* @param {string} params.webPropertyId Web property ID to retrieve the AdWords link for.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/entityAdWordsLinks/{webPropertyAdWordsLinkId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'webPropertyAdWordsLinkId'],
pathParams: ['accountId', 'webPropertyAdWordsLinkId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.webPropertyAdWordsLinks.insert
*
* @desc Creates a webProperty-AdWords link.
*
* @alias analytics.management.webPropertyAdWordsLinks.insert
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId ID of the Google Analytics account to create the link for.
* @param {string} params.webPropertyId Web property ID to create the link for.
* @param {analytics(v3).EntityAdWordsLink} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/entityAdWordsLinks',
method: 'POST'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId'],
pathParams: ['accountId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.webPropertyAdWordsLinks.list
*
* @desc Lists webProperty-AdWords links for a given web property.
*
* @alias analytics.management.webPropertyAdWordsLinks.list
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId ID of the account which the given web property belongs to.
* @param {integer=} params.max-results The maximum number of webProperty-AdWords links to include in this response.
* @param {integer=} params.start-index An index of the first webProperty-AdWords link to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.
* @param {string} params.webPropertyId Web property ID to retrieve the AdWords links for.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/entityAdWordsLinks',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId'],
pathParams: ['accountId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.webPropertyAdWordsLinks.patch
*
* @desc Updates an existing webProperty-AdWords link. This method supports patch semantics.
*
* @alias analytics.management.webPropertyAdWordsLinks.patch
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId ID of the account which the given web property belongs to.
* @param {string} params.webPropertyAdWordsLinkId Web property-AdWords link ID.
* @param {string} params.webPropertyId Web property ID to retrieve the AdWords link for.
* @param {analytics(v3).EntityAdWordsLink} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/entityAdWordsLinks/{webPropertyAdWordsLinkId}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'webPropertyAdWordsLinkId'],
pathParams: ['accountId', 'webPropertyAdWordsLinkId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.webPropertyAdWordsLinks.update
*
* @desc Updates an existing webProperty-AdWords link.
*
* @alias analytics.management.webPropertyAdWordsLinks.update
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId ID of the account which the given web property belongs to.
* @param {string} params.webPropertyAdWordsLinkId Web property-AdWords link ID.
* @param {string} params.webPropertyId Web property ID to retrieve the AdWords link for.
* @param {analytics(v3).EntityAdWordsLink} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/entityAdWordsLinks/{webPropertyAdWordsLinkId}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'webPropertyAdWordsLinkId'],
pathParams: ['accountId', 'webPropertyAdWordsLinkId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
webproperties: {
/**
* analytics.management.webproperties.get
*
* @desc Gets a web property to which the user has access.
*
* @alias analytics.management.webproperties.get
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to retrieve the web property for.
* @param {string} params.webPropertyId ID to retrieve the web property for.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId'],
pathParams: ['accountId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.webproperties.insert
*
* @desc Create a new property if the account has fewer than 20 properties. Web properties are visible in the Google Analytics interface only if they have at least one profile.
*
* @alias analytics.management.webproperties.insert
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to create the web property for.
* @param {analytics(v3).Webproperty} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties',
method: 'POST'
}, options),
params: params,
requiredParams: ['accountId'],
pathParams: ['accountId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.webproperties.list
*
* @desc Lists web properties to which the user has access.
*
* @alias analytics.management.webproperties.list
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to retrieve web properties for. Can either be a specific account ID or '~all', which refers to all the accounts that user has access to.
* @param {integer=} params.max-results The maximum number of web properties to include in this response.
* @param {integer=} params.start-index An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId'],
pathParams: ['accountId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.webproperties.patch
*
* @desc Updates an existing web property. This method supports patch semantics.
*
* @alias analytics.management.webproperties.patch
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to which the web property belongs
* @param {string} params.webPropertyId Web property ID
* @param {analytics(v3).Webproperty} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId'],
pathParams: ['accountId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.webproperties.update
*
* @desc Updates an existing web property.
*
* @alias analytics.management.webproperties.update
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to which the web property belongs
* @param {string} params.webPropertyId Web property ID
* @param {analytics(v3).Webproperty} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId'],
pathParams: ['accountId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
webpropertyUserLinks: {
/**
* analytics.management.webpropertyUserLinks.delete
*
* @desc Removes a user from the given web property.
*
* @alias analytics.management.webpropertyUserLinks.delete
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to delete the user link for.
* @param {string} params.linkId Link ID to delete the user link for.
* @param {string} params.webPropertyId Web Property ID to delete the user link for.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/entityUserLinks/{linkId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'linkId'],
pathParams: ['accountId', 'linkId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.webpropertyUserLinks.insert
*
* @desc Adds a new user to the given web property.
*
* @alias analytics.management.webpropertyUserLinks.insert
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to create the user link for.
* @param {string} params.webPropertyId Web Property ID to create the user link for.
* @param {analytics(v3).EntityUserLink} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/entityUserLinks',
method: 'POST'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId'],
pathParams: ['accountId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.webpropertyUserLinks.list
*
* @desc Lists webProperty-user links for a given web property.
*
* @alias analytics.management.webpropertyUserLinks.list
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID which the given web property belongs to.
* @param {integer=} params.max-results The maximum number of webProperty-user Links to include in this response.
* @param {integer=} params.start-index An index of the first webProperty-user link to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.
* @param {string} params.webPropertyId Web Property ID for the webProperty-user links to retrieve. Can either be a specific web property ID or '~all', which refers to all the web properties that user has access to.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/entityUserLinks',
method: 'GET'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId'],
pathParams: ['accountId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* analytics.management.webpropertyUserLinks.update
*
* @desc Updates permissions for an existing user on the given web property.
*
* @alias analytics.management.webpropertyUserLinks.update
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.accountId Account ID to update the account-user link for.
* @param {string} params.linkId Link ID to update the account-user link for.
* @param {string} params.webPropertyId Web property ID to update the account-user link for.
* @param {analytics(v3).EntityUserLink} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/entityUserLinks/{linkId}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['accountId', 'webPropertyId', 'linkId'],
pathParams: ['accountId', 'linkId', 'webPropertyId'],
context: self
};
return createAPIRequest(parameters, callback);
}
}
};
self.metadata = {
columns: {
/**
* analytics.metadata.columns.list
*
* @desc Lists all columns for a report type
*
* @alias analytics.metadata.columns.list
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {string} params.reportType Report type. Allowed Values: 'ga'. Where 'ga' corresponds to the Core Reporting API
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/metadata/{reportType}/columns',
method: 'GET'
}, options),
params: params,
requiredParams: ['reportType'],
pathParams: ['reportType'],
context: self
};
return createAPIRequest(parameters, callback);
}
}
};
self.provisioning = {
/**
* analytics.provisioning.createAccountTicket
*
* @desc Creates an account ticket.
*
* @alias analytics.provisioning.createAccountTicket
* @memberOf! analytics(v3)
*
* @param {object} params Parameters for request
* @param {analytics(v3).AccountTicket} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
createAccountTicket: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/analytics/v3/provisioning/createAccountTicket',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
};
}
/**
* @typedef Account
* @memberOf! analytics(v3)
* @type object
* @property {object} childLink Child link for an account entry. Points to the list of web properties for this account.
* @property {string} created Time the account was created.
* @property {string} id Account ID.
* @property {string} kind Resource type for Analytics account.
* @property {string} name Account name.
* @property {object} permissions Permissions the user has for this account.
* @property {string} selfLink Link for this account.
* @property {boolean} starred Indicates whether this account is starred or not.
* @property {string} updated Time the account was last modified.
*/
/**
* @typedef AccountRef
* @memberOf! analytics(v3)
* @type object
* @property {string} href Link for this account.
* @property {string} id Account ID.
* @property {string} kind Analytics account reference.
* @property {string} name Account name.
*/
/**
* @typedef AccountSummaries
* @memberOf! analytics(v3)
* @type object
* @property {analytics(v3).AccountSummary[]} items A list of AccountSummaries.
* @property {integer} itemsPerPage The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.
* @property {string} kind Collection type.
* @property {string} nextLink Link to next page for this AccountSummary collection.
* @property {string} previousLink Link to previous page for this AccountSummary collection.
* @property {integer} startIndex The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.
* @property {integer} totalResults The total number of results for the query, regardless of the number of results in the response.
* @property {string} username Email ID of the authenticated user
*/
/**
* @typedef AccountSummary
* @memberOf! analytics(v3)
* @type object
* @property {string} id Account ID.
* @property {string} kind Resource type for Analytics AccountSummary.
* @property {string} name Account name.
* @property {boolean} starred Indicates whether this account is starred or not.
* @property {analytics(v3).WebPropertySummary[]} webProperties List of web properties under this account.
*/
/**
* @typedef AccountTicket
* @memberOf! analytics(v3)
* @type object
* @property {analytics(v3).Account} account Account for this ticket.
* @property {string} id Account ticket ID used to access the account ticket.
* @property {string} kind Resource type for account ticket.
* @property {analytics(v3).Profile} profile View (Profile) for the account.
* @property {string} redirectUri Redirect URI where the user will be sent after accepting Terms of Service. Must be configured in APIs console as a callback URL.
* @property {analytics(v3).Webproperty} webproperty Web property for the account.
*/
/**
* @typedef Accounts
* @memberOf! analytics(v3)
* @type object
* @property {analytics(v3).Account[]} items A list of accounts.
* @property {integer} itemsPerPage The maximum number of entries the response can contain, regardless of the actual number of entries returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.
* @property {string} kind Collection type.
* @property {string} nextLink Next link for this account collection.
* @property {string} previousLink Previous link for this account collection.
* @property {integer} startIndex The starting index of the entries, which is 1 by default or otherwise specified by the start-index query parameter.
* @property {integer} totalResults The total number of results for the query, regardless of the number of results in the response.
* @property {string} username Email ID of the authenticated user
*/
/**
* @typedef AdWordsAccount
* @memberOf! analytics(v3)
* @type object
* @property {boolean} autoTaggingEnabled True if auto-tagging is enabled on the AdWords account. Read-only after the insert operation.
* @property {string} customerId Customer ID. This field is required when creating an AdWords link.
* @property {string} kind Resource type for AdWords account.
*/
/**
* @typedef AnalyticsDataimportDeleteUploadDataRequest
* @memberOf! analytics(v3)
* @type object
* @property {string[]} customDataImportUids A list of upload UIDs.
*/
/**
* @typedef Column
* @memberOf! analytics(v3)
* @type object
* @property {object} attributes Map of attribute name and value for this column.
* @property {string} id Column id.
* @property {string} kind Resource type for Analytics column.
*/
/**
* @typedef Columns
* @memberOf! analytics(v3)
* @type object
* @property {string[]} attributeNames List of attributes names returned by columns.
* @property {string} etag Etag of collection. This etag can be compared with the last response etag to check if response has changed.
* @property {analytics(v3).Column[]} items List of columns for a report type.
* @property {string} kind Collection type.
* @property {integer} totalResults Total number of columns returned in the response.
*/
/**
* @typedef CustomDataSource
* @memberOf! analytics(v3)
* @type object
* @property {string} accountId Account ID to which this custom data source belongs.
* @property {object} childLink
* @property {string} created Time this custom data source was created.
* @property {string} description Description of custom data source.
* @property {string} id Custom data source ID.
* @property {string} importBehavior
* @property {string} kind Resource type for Analytics custom data source.
* @property {string} name Name of this custom data source.
* @property {object} parentLink Parent link for this custom data source. Points to the web property to which this custom data source belongs.
* @property {string[]} profilesLinked IDs of views (profiles) linked to the custom data source.
* @property {string} selfLink Link for this Analytics custom data source.
* @property {string} type Type of the custom data source.
* @property {string} updated Time this custom data source was last modified.
* @property {string} uploadType
* @property {string} webPropertyId Web property ID of the form UA-XXXXX-YY to which this custom data source belongs.
*/
/**
* @typedef CustomDataSources
* @memberOf! analytics(v3)
* @type object
* @property {analytics(v3).CustomDataSource[]} items Collection of custom data sources.
* @property {integer} itemsPerPage The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.
* @property {string} kind Collection type.
* @property {string} nextLink Link to next page for this custom data source collection.
* @property {string} previousLink Link to previous page for this custom data source collection.
* @property {integer} startIndex The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.
* @property {integer} totalResults The total number of results for the query, regardless of the number of results in the response.
* @property {string} username Email ID of the authenticated user
*/
/**
* @typedef CustomDimension
* @memberOf! analytics(v3)
* @type object
* @property {string} accountId Account ID.
* @property {boolean} active Boolean indicating whether the custom dimension is active.
* @property {string} created Time the custom dimension was created.
* @property {string} id Custom dimension ID.
* @property {integer} index Index of the custom dimension.
* @property {string} kind Kind value for a custom dimension. Set to "analytics#customDimension". It is a read-only field.
* @property {string} name Name of the custom dimension.
* @property {object} parentLink Parent link for the custom dimension. Points to the property to which the custom dimension belongs.
* @property {string} scope Scope of the custom dimension: HIT, SESSION, USER or PRODUCT.
* @property {string} selfLink Link for the custom dimension
* @property {string} updated Time the custom dimension was last modified.
* @property {string} webPropertyId Property ID.
*/
/**
* @typedef CustomDimensions
* @memberOf! analytics(v3)
* @type object
* @property {analytics(v3).CustomDimension[]} items Collection of custom dimensions.
* @property {integer} itemsPerPage The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.
* @property {string} kind Collection type.
* @property {string} nextLink Link to next page for this custom dimension collection.
* @property {string} previousLink Link to previous page for this custom dimension collection.
* @property {integer} startIndex The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.
* @property {integer} totalResults The total number of results for the query, regardless of the number of results in the response.
* @property {string} username Email ID of the authenticated user
*/
/**
* @typedef CustomMetric
* @memberOf! analytics(v3)
* @type object
* @property {string} accountId Account ID.
* @property {boolean} active Boolean indicating whether the custom metric is active.
* @property {string} created Time the custom metric was created.
* @property {string} id Custom metric ID.
* @property {integer} index Index of the custom metric.
* @property {string} kind Kind value for a custom metric. Set to "analytics#customMetric". It is a read-only field.
* @property {string} max_value Max value of custom metric.
* @property {string} min_value Min value of custom metric.
* @property {string} name Name of the custom metric.
* @property {object} parentLink Parent link for the custom metric. Points to the property to which the custom metric belongs.
* @property {string} scope Scope of the custom metric: HIT or PRODUCT.
* @property {string} selfLink Link for the custom metric
* @property {string} type Data type of custom metric.
* @property {string} updated Time the custom metric was last modified.
* @property {string} webPropertyId Property ID.
*/
/**
* @typedef CustomMetrics
* @memberOf! analytics(v3)
* @type object
* @property {analytics(v3).CustomMetric[]} items Collection of custom metrics.
* @property {integer} itemsPerPage The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.
* @property {string} kind Collection type.
* @property {string} nextLink Link to next page for this custom metric collection.
* @property {string} previousLink Link to previous page for this custom metric collection.
* @property {integer} startIndex The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.
* @property {integer} totalResults The total number of results for the query, regardless of the number of results in the response.
* @property {string} username Email ID of the authenticated user
*/
/**
* @typedef EntityAdWordsLink
* @memberOf! analytics(v3)
* @type object
* @property {analytics(v3).AdWordsAccount[]} adWordsAccounts A list of AdWords client accounts. These cannot be MCC accounts. This field is required when creating an AdWords link. It cannot be empty.
* @property {object} entity Web property being linked.
* @property {string} id Entity AdWords link ID
* @property {string} kind Resource type for entity AdWords link.
* @property {string} name Name of the link. This field is required when creating an AdWords link.
* @property {string[]} profileIds IDs of linked Views (Profiles) represented as strings.
* @property {string} selfLink URL link for this Google Analytics - Google AdWords link.
*/
/**
* @typedef EntityAdWordsLinks
* @memberOf! analytics(v3)
* @type object
* @property {analytics(v3).EntityAdWordsLink[]} items A list of entity AdWords links.
* @property {integer} itemsPerPage The maximum number of entries the response can contain, regardless of the actual number of entries returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.
* @property {string} kind Collection type.
* @property {string} nextLink Next link for this AdWords link collection.
* @property {string} previousLink Previous link for this AdWords link collection.
* @property {integer} startIndex The starting index of the entries, which is 1 by default or otherwise specified by the start-index query parameter.
* @property {integer} totalResults The total number of results for the query, regardless of the number of results in the response.
*/
/**
* @typedef EntityUserLink
* @memberOf! analytics(v3)
* @type object
* @property {object} entity Entity for this link. It can be an account, a web property, or a view (profile).
* @property {string} id Entity user link ID
* @property {string} kind Resource type for entity user link.
* @property {object} permissions Permissions the user has for this entity.
* @property {string} selfLink Self link for this resource.
* @property {analytics(v3).UserRef} userRef User reference.
*/
/**
* @typedef EntityUserLinks
* @memberOf! analytics(v3)
* @type object
* @property {analytics(v3).EntityUserLink[]} items A list of entity user links.
* @property {integer} itemsPerPage The maximum number of entries the response can contain, regardless of the actual number of entries returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.
* @property {string} kind Collection type.
* @property {string} nextLink Next link for this account collection.
* @property {string} previousLink Previous link for this account collection.
* @property {integer} startIndex The starting index of the entries, which is 1 by default or otherwise specified by the start-index query parameter.
* @property {integer} totalResults The total number of results for the query, regardless of the number of results in the response.
*/
/**
* @typedef Experiment
* @memberOf! analytics(v3)
* @type object
* @property {string} accountId Account ID to which this experiment belongs. This field is read-only.
* @property {string} created Time the experiment was created. This field is read-only.
* @property {string} description Notes about this experiment.
* @property {boolean} editableInGaUi If true, the end user will be able to edit the experiment via the Google Analytics user interface.
* @property {string} endTime The ending time of the experiment (the time the status changed from RUNNING to ENDED). This field is present only if the experiment has ended. This field is read-only.
* @property {boolean} equalWeighting Boolean specifying whether to distribute traffic evenly across all variations. If the value is False, content experiments follows the default behavior of adjusting traffic dynamically based on variation performance. Optional -- defaults to False. This field may not be changed for an experiment whose status is ENDED.
* @property {string} id Experiment ID. Required for patch and update. Disallowed for create.
* @property {string} internalWebPropertyId Internal ID for the web property to which this experiment belongs. This field is read-only.
* @property {string} kind Resource type for an Analytics experiment. This field is read-only.
* @property {integer} minimumExperimentLengthInDays An integer number in [3, 90]. Specifies the minimum length of the experiment. Can be changed for a running experiment. This field may not be changed for an experiments whose status is ENDED.
* @property {string} name Experiment name. This field may not be changed for an experiment whose status is ENDED. This field is required when creating an experiment.
* @property {string} objectiveMetric The metric that the experiment is optimizing. Valid values: "ga:goal(n)Completions", "ga:adsenseAdsClicks", "ga:adsenseAdsViewed", "ga:adsenseRevenue", "ga:bounces", "ga:pageviews", "ga:sessionDuration", "ga:transactions", "ga:transactionRevenue". This field is required if status is "RUNNING" and servingFramework is one of "REDIRECT" or "API".
* @property {string} optimizationType Whether the objectiveMetric should be minimized or maximized. Possible values: "MAXIMUM", "MINIMUM". Optional--defaults to "MAXIMUM". Cannot be specified without objectiveMetric. Cannot be modified when status is "RUNNING" or "ENDED".
* @property {object} parentLink Parent link for an experiment. Points to the view (profile) to which this experiment belongs.
* @property {string} profileId View (Profile) ID to which this experiment belongs. This field is read-only.
* @property {string} reasonExperimentEnded Why the experiment ended. Possible values: "STOPPED_BY_USER", "WINNER_FOUND", "EXPERIMENT_EXPIRED", "ENDED_WITH_NO_WINNER", "GOAL_OBJECTIVE_CHANGED". "ENDED_WITH_NO_WINNER" means that the experiment didn't expire but no winner was projected to be found. If the experiment status is changed via the API to ENDED this field is set to STOPPED_BY_USER. This field is read-only.
* @property {boolean} rewriteVariationUrlsAsOriginal Boolean specifying whether variations URLS are rewritten to match those of the original. This field may not be changed for an experiments whose status is ENDED.
* @property {string} selfLink Link for this experiment. This field is read-only.
* @property {string} servingFramework The framework used to serve the experiment variations and evaluate the results. One of:
- REDIRECT: Google Analytics redirects traffic to different variation pages, reports the chosen variation and evaluates the results.
- API: Google Analytics chooses and reports the variation to serve and evaluates the results; the caller is responsible for serving the selected variation.
- EXTERNAL: The variations will be served externally and the chosen variation reported to Google Analytics. The caller is responsible for serving the selected variation and evaluating the results.
* @property {string} snippet The snippet of code to include on the control page(s). This field is read-only.
* @property {string} startTime The starting time of the experiment (the time the status changed from READY_TO_RUN to RUNNING). This field is present only if the experiment has started. This field is read-only.
* @property {string} status Experiment status. Possible values: "DRAFT", "READY_TO_RUN", "RUNNING", "ENDED". Experiments can be created in the "DRAFT", "READY_TO_RUN" or "RUNNING" state. This field is required when creating an experiment.
* @property {number} trafficCoverage A floating-point number in (0, 1]. Specifies the fraction of the traffic that participates in the experiment. Can be changed for a running experiment. This field may not be changed for an experiments whose status is ENDED.
* @property {string} updated Time the experiment was last modified. This field is read-only.
* @property {object[]} variations Array of variations. The first variation in the array is the original. The number of variations may not change once an experiment is in the RUNNING state. At least two variations are required before status can be set to RUNNING.
* @property {string} webPropertyId Web property ID to which this experiment belongs. The web property ID is of the form UA-XXXXX-YY. This field is read-only.
* @property {number} winnerConfidenceLevel A floating-point number in (0, 1). Specifies the necessary confidence level to choose a winner. This field may not be changed for an experiments whose status is ENDED.
* @property {boolean} winnerFound Boolean specifying whether a winner has been found for this experiment. This field is read-only.
*/
/**
* @typedef Experiments
* @memberOf! analytics(v3)
* @type object
* @property {analytics(v3).Experiment[]} items A list of experiments.
* @property {integer} itemsPerPage The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.
* @property {string} kind Collection type.
* @property {string} nextLink Link to next page for this experiment collection.
* @property {string} previousLink Link to previous page for this experiment collection.
* @property {integer} startIndex The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.
* @property {integer} totalResults The total number of results for the query, regardless of the number of resources in the result.
* @property {string} username Email ID of the authenticated user
*/
/**
* @typedef Filter
* @memberOf! analytics(v3)
* @type object
* @property {string} accountId Account ID to which this filter belongs.
* @property {object} advancedDetails Details for the filter of the type ADVANCED.
* @property {string} created Time this filter was created.
* @property {analytics(v3).FilterExpression} excludeDetails Details for the filter of the type EXCLUDE.
* @property {string} id Filter ID.
* @property {analytics(v3).FilterExpression} includeDetails Details for the filter of the type INCLUDE.
* @property {string} kind Resource type for Analytics filter.
* @property {object} lowercaseDetails Details for the filter of the type LOWER.
* @property {string} name Name of this filter.
* @property {object} parentLink Parent link for this filter. Points to the account to which this filter belongs.
* @property {object} searchAndReplaceDetails Details for the filter of the type SEARCH_AND_REPLACE.
* @property {string} selfLink Link for this filter.
* @property {string} type Type of this filter. Possible values are INCLUDE, EXCLUDE, LOWERCASE, UPPERCASE, SEARCH_AND_REPLACE and ADVANCED.
* @property {string} updated Time this filter was last modified.
* @property {object} uppercaseDetails Details for the filter of the type UPPER.
*/
/**
* @typedef FilterExpression
* @memberOf! analytics(v3)
* @type object
* @property {boolean} caseSensitive Determines if the filter is case sensitive.
* @property {string} expressionValue Filter expression value
* @property {string} field Field to filter. Possible values:
- Content and Traffic
- PAGE_REQUEST_URI,
- PAGE_HOSTNAME,
- PAGE_TITLE,
- REFERRAL,
- COST_DATA_URI (Campaign target URL),
- HIT_TYPE,
- INTERNAL_SEARCH_TERM,
- INTERNAL_SEARCH_TYPE,
- SOURCE_PROPERTY_TRACKING_ID,
- Campaign or AdGroup
- CAMPAIGN_SOURCE,
- CAMPAIGN_MEDIUM,
- CAMPAIGN_NAME,
- CAMPAIGN_AD_GROUP,
- CAMPAIGN_TERM,
- CAMPAIGN_CONTENT,
- CAMPAIGN_CODE,
- CAMPAIGN_REFERRAL_PATH,
- E-Commerce
- TRANSACTION_COUNTRY,
- TRANSACTION_REGION,
- TRANSACTION_CITY,
- TRANSACTION_AFFILIATION (Store or order location),
- ITEM_NAME,
- ITEM_CODE,
- ITEM_VARIATION,
- TRANSACTION_ID,
- TRANSACTION_CURRENCY_CODE,
- PRODUCT_ACTION_TYPE,
- Audience/Users
- BROWSER,
- BROWSER_VERSION,
- BROWSER_SIZE,
- PLATFORM,
- PLATFORM_VERSION,
- LANGUAGE,
- SCREEN_RESOLUTION,
- SCREEN_COLORS,
- JAVA_ENABLED (Boolean Field),
- FLASH_VERSION,
- GEO_SPEED (Connection speed),
- VISITOR_TYPE,
- GEO_ORGANIZATION (ISP organization),
- GEO_DOMAIN,
- GEO_IP_ADDRESS,
- GEO_IP_VERSION,
- Location
- GEO_COUNTRY,
- GEO_REGION,
- GEO_CITY,
- Event
- EVENT_CATEGORY,
- EVENT_ACTION,
- EVENT_LABEL,
- Other
- CUSTOM_FIELD_1,
- CUSTOM_FIELD_2,
- USER_DEFINED_VALUE,
- Application
- APP_ID,
- APP_INSTALLER_ID,
- APP_NAME,
- APP_VERSION,
- SCREEN,
- IS_APP (Boolean Field),
- IS_FATAL_EXCEPTION (Boolean Field),
- EXCEPTION_DESCRIPTION,
- Mobile device
- IS_MOBILE (Boolean Field, Deprecated. Use DEVICE_CATEGORY=mobile),
- IS_TABLET (Boolean Field, Deprecated. Use DEVICE_CATEGORY=tablet),
- DEVICE_CATEGORY,
- MOBILE_HAS_QWERTY_KEYBOARD (Boolean Field),
- MOBILE_HAS_NFC_SUPPORT (Boolean Field),
- MOBILE_HAS_CELLULAR_RADIO (Boolean Field),
- MOBILE_HAS_WIFI_SUPPORT (Boolean Field),
- MOBILE_BRAND_NAME,
- MOBILE_MODEL_NAME,
- MOBILE_MARKETING_NAME,
- MOBILE_POINTING_METHOD,
- Social
- SOCIAL_NETWORK,
- SOCIAL_ACTION,
- SOCIAL_ACTION_TARGET,
- Custom dimension
- CUSTOM_DIMENSION (See accompanying field index),
* @property {integer} fieldIndex The Index of the custom dimension. Set only if the field is a is CUSTOM_DIMENSION.
* @property {string} kind Kind value for filter expression
* @property {string} matchType Match type for this filter. Possible values are BEGINS_WITH, EQUAL, ENDS_WITH, CONTAINS, or MATCHES. GEO_DOMAIN, GEO_IP_ADDRESS, PAGE_REQUEST_URI, or PAGE_HOSTNAME filters can use any match type; all other filters must use MATCHES.
*/
/**
* @typedef FilterRef
* @memberOf! analytics(v3)
* @type object
* @property {string} accountId Account ID to which this filter belongs.
* @property {string} href Link for this filter.
* @property {string} id Filter ID.
* @property {string} kind Kind value for filter reference.
* @property {string} name Name of this filter.
*/
/**
* @typedef Filters
* @memberOf! analytics(v3)
* @type object
* @property {analytics(v3).Filter[]} items A list of filters.
* @property {integer} itemsPerPage The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1,000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.
* @property {string} kind Collection type.
* @property {string} nextLink Link to next page for this filter collection.
* @property {string} previousLink Link to previous page for this filter collection.
* @property {integer} startIndex The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.
* @property {integer} totalResults The total number of results for the query, regardless of the number of results in the response.
* @property {string} username Email ID of the authenticated user
*/
/**
* @typedef GaData
* @memberOf! analytics(v3)
* @type object
* @property {object[]} columnHeaders Column headers that list dimension names followed by the metric names. The order of dimensions and metrics is same as specified in the request.
* @property {boolean} containsSampledData Determines if Analytics data contains samples.
* @property {string} dataLastRefreshed The last refreshed time in seconds for Analytics data.
* @property {object} dataTable
* @property {string} id Unique ID for this data response.
* @property {integer} itemsPerPage The maximum number of rows the response can contain, regardless of the actual number of rows returned. Its value ranges from 1 to 10,000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.
* @property {string} kind Resource type.
* @property {string} nextLink Link to next page for this Analytics data query.
* @property {string} previousLink Link to previous page for this Analytics data query.
* @property {object} profileInfo Information for the view (profile), for which the Analytics data was requested.
* @property {object} query Analytics data request query parameters.
* @property {array[]} rows Analytics data rows, where each row contains a list of dimension values followed by the metric values. The order of dimensions and metrics is same as specified in the request.
* @property {string} sampleSize The number of samples used to calculate the result.
* @property {string} sampleSpace Total size of the sample space from which the samples were selected.
* @property {string} selfLink Link to this page.
* @property {integer} totalResults The total number of rows for the query, regardless of the number of rows in the response.
* @property {object} totalsForAllResults Total values for the requested metrics over all the results, not just the results returned in this response. The order of the metric totals is same as the metric order specified in the request.
*/
/**
* @typedef Goal
* @memberOf! analytics(v3)
* @type object
* @property {string} accountId Account ID to which this goal belongs.
* @property {boolean} active Determines whether this goal is active.
* @property {string} created Time this goal was created.
* @property {object} eventDetails Details for the goal of the type EVENT.
* @property {string} id Goal ID.
* @property {string} internalWebPropertyId Internal ID for the web property to which this goal belongs.
* @property {string} kind Resource type for an Analytics goal.
* @property {string} name Goal name.
* @property {object} parentLink Parent link for a goal. Points to the view (profile) to which this goal belongs.
* @property {string} profileId View (Profile) ID to which this goal belongs.
* @property {string} selfLink Link for this goal.
* @property {string} type Goal type. Possible values are URL_DESTINATION, VISIT_TIME_ON_SITE, VISIT_NUM_PAGES, AND EVENT.
* @property {string} updated Time this goal was last modified.
* @property {object} urlDestinationDetails Details for the goal of the type URL_DESTINATION.
* @property {number} value Goal value.
* @property {object} visitNumPagesDetails Details for the goal of the type VISIT_NUM_PAGES.
* @property {object} visitTimeOnSiteDetails Details for the goal of the type VISIT_TIME_ON_SITE.
* @property {string} webPropertyId Web property ID to which this goal belongs. The web property ID is of the form UA-XXXXX-YY.
*/
/**
* @typedef Goals
* @memberOf! analytics(v3)
* @type object
* @property {analytics(v3).Goal[]} items A list of goals.
* @property {integer} itemsPerPage The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.
* @property {string} kind Collection type.
* @property {string} nextLink Link to next page for this goal collection.
* @property {string} previousLink Link to previous page for this goal collection.
* @property {integer} startIndex The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.
* @property {integer} totalResults The total number of results for the query, regardless of the number of resources in the result.
* @property {string} username Email ID of the authenticated user
*/
/**
* @typedef IncludeConditions
* @memberOf! analytics(v3)
* @type object
* @property {integer} daysToLookBack The look-back window lets you specify a time frame for evaluating the behavior that qualifies users for your audience. For example, if your filters include users from Central Asia, and Transactions Greater than 2, and you set the look-back window to 14 days, then any user from Central Asia whose cumulative transactions exceed 2 during the last 14 days is added to the audience.
* @property {boolean} isSmartList Boolean indicating whether this segment is a smart list. https://support.google.com/analytics/answer/4628577
* @property {string} kind Resource type for include conditions.
* @property {integer} membershipDurationDays Number of days (in the range 1 to 540) a user remains in the audience.
* @property {string} segment The segment condition that will cause a user to be added to an audience.
*/
/**
* @typedef LinkedForeignAccount
* @memberOf! analytics(v3)
* @type object
* @property {string} accountId Account ID to which this linked foreign account belongs.
* @property {boolean} eligibleForSearch Boolean indicating whether this is eligible for search.
* @property {string} id Entity ad account link ID.
* @property {string} internalWebPropertyId Internal ID for the web property to which this linked foreign account belongs.
* @property {string} kind Resource type for linked foreign account.
* @property {string} linkedAccountId The foreign account ID. For example the an AdWords `linkedAccountId` has the following format XXX-XXX-XXXX.
* @property {string} remarketingAudienceId Remarketing audience ID to which this linked foreign account belongs.
* @property {string} status The status of this foreign account link.
* @property {string} type The type of the foreign account. For example `ADWORDS_LINKS`.
* @property {string} webPropertyId Web property ID of the form UA-XXXXX-YY to which this linked foreign account belongs.
*/
/**
* @typedef McfData
* @memberOf! analytics(v3)
* @type object
* @property {object[]} columnHeaders Column headers that list dimension names followed by the metric names. The order of dimensions and metrics is same as specified in the request.
* @property {boolean} containsSampledData Determines if the Analytics data contains sampled data.
* @property {string} id Unique ID for this data response.
* @property {integer} itemsPerPage The maximum number of rows the response can contain, regardless of the actual number of rows returned. Its value ranges from 1 to 10,000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.
* @property {string} kind Resource type.
* @property {string} nextLink Link to next page for this Analytics data query.
* @property {string} previousLink Link to previous page for this Analytics data query.
* @property {object} profileInfo Information for the view (profile), for which the Analytics data was requested.
* @property {object} query Analytics data request query parameters.
* @property {array[]} rows Analytics data rows, where each row contains a list of dimension values followed by the metric values. The order of dimensions and metrics is same as specified in the request.
* @property {string} sampleSize The number of samples used to calculate the result.
* @property {string} sampleSpace Total size of the sample space from which the samples were selected.
* @property {string} selfLink Link to this page.
* @property {integer} totalResults The total number of rows for the query, regardless of the number of rows in the response.
* @property {object} totalsForAllResults Total values for the requested metrics over all the results, not just the results returned in this response. The order of the metric totals is same as the metric order specified in the request.
*/
/**
* @typedef Profile
* @memberOf! analytics(v3)
* @type object
* @property {string} accountId Account ID to which this view (profile) belongs.
* @property {boolean} botFilteringEnabled Indicates whether bot filtering is enabled for this view (profile).
* @property {object} childLink Child link for this view (profile). Points to the list of goals for this view (profile).
* @property {string} created Time this view (profile) was created.
* @property {string} currency The currency type associated with this view (profile), defaults to USD. The supported values are:
USD, JPY, EUR, GBP, AUD, KRW, BRL, CNY, DKK, RUB, SEK, NOK, PLN, TRY, TWD, HKD, THB, IDR, ARS, MXN, VND, PHP, INR, CHF, CAD, CZK, NZD, HUF, BGN, LTL, ZAR, UAH, AED, BOB, CLP, COP, EGP, HRK, ILS, MAD, MYR, PEN, PKR, RON, RSD, SAR, SGD, VEF, LVL
* @property {string} defaultPage Default page for this view (profile).
* @property {boolean} eCommerceTracking Indicates whether ecommerce tracking is enabled for this view (profile).
* @property {boolean} enhancedECommerceTracking Indicates whether enhanced ecommerce tracking is enabled for this view (profile). This property can only be enabled if ecommerce tracking is enabled.
* @property {string} excludeQueryParameters The query parameters that are excluded from this view (profile).
* @property {string} id View (Profile) ID.
* @property {string} internalWebPropertyId Internal ID for the web property to which this view (profile) belongs.
* @property {string} kind Resource type for Analytics view (profile).
* @property {string} name Name of this view (profile).
* @property {object} parentLink Parent link for this view (profile). Points to the web property to which this view (profile) belongs.
* @property {object} permissions Permissions the user has for this view (profile).
* @property {string} selfLink Link for this view (profile).
* @property {string} siteSearchCategoryParameters Site search category parameters for this view (profile).
* @property {string} siteSearchQueryParameters The site search query parameters for this view (profile).
* @property {boolean} starred Indicates whether this view (profile) is starred or not.
* @property {boolean} stripSiteSearchCategoryParameters Whether or not Analytics will strip search category parameters from the URLs in your reports.
* @property {boolean} stripSiteSearchQueryParameters Whether or not Analytics will strip search query parameters from the URLs in your reports.
* @property {string} timezone Time zone for which this view (profile) has been configured. Time zones are identified by strings from the TZ database.
* @property {string} type View (Profile) type. Supported types: WEB or APP.
* @property {string} updated Time this view (profile) was last modified.
* @property {string} webPropertyId Web property ID of the form UA-XXXXX-YY to which this view (profile) belongs.
* @property {string} websiteUrl Website URL for this view (profile).
*/
/**
* @typedef ProfileFilterLink
* @memberOf! analytics(v3)
* @type object
* @property {analytics(v3).FilterRef} filterRef Filter for this link.
* @property {string} id Profile filter link ID.
* @property {string} kind Resource type for Analytics filter.
* @property {analytics(v3).ProfileRef} profileRef View (Profile) for this link.
* @property {integer} rank The rank of this profile filter link relative to the other filters linked to the same profile.
For readonly (i.e., list and get) operations, the rank always starts at 1.
For write (i.e., create, update, or delete) operations, you may specify a value between 0 and 255 inclusively, [0, 255]. In order to insert a link at the end of the list, either don't specify a rank or set a rank to a number greater than the largest rank in the list. In order to insert a link to the beginning of the list specify a rank that is less than or equal to 1. The new link will move all existing filters with the same or lower rank down the list. After the link is inserted/updated/deleted all profile filter links will be renumbered starting at 1.
* @property {string} selfLink Link for this profile filter link.
*/
/**
* @typedef ProfileFilterLinks
* @memberOf! analytics(v3)
* @type object
* @property {analytics(v3).ProfileFilterLink[]} items A list of profile filter links.
* @property {integer} itemsPerPage The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1,000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.
* @property {string} kind Collection type.
* @property {string} nextLink Link to next page for this profile filter link collection.
* @property {string} previousLink Link to previous page for this profile filter link collection.
* @property {integer} startIndex The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.
* @property {integer} totalResults The total number of results for the query, regardless of the number of results in the response.
* @property {string} username Email ID of the authenticated user
*/
/**
* @typedef ProfileRef
* @memberOf! analytics(v3)
* @type object
* @property {string} accountId Account ID to which this view (profile) belongs.
* @property {string} href Link for this view (profile).
* @property {string} id View (Profile) ID.
* @property {string} internalWebPropertyId Internal ID for the web property to which this view (profile) belongs.
* @property {string} kind Analytics view (profile) reference.
* @property {string} name Name of this view (profile).
* @property {string} webPropertyId Web property ID of the form UA-XXXXX-YY to which this view (profile) belongs.
*/
/**
* @typedef ProfileSummary
* @memberOf! analytics(v3)
* @type object
* @property {string} id View (profile) ID.
* @property {string} kind Resource type for Analytics ProfileSummary.
* @property {string} name View (profile) name.
* @property {boolean} starred Indicates whether this view (profile) is starred or not.
* @property {string} type View (Profile) type. Supported types: WEB or APP.
*/
/**
* @typedef Profiles
* @memberOf! analytics(v3)
* @type object
* @property {analytics(v3).Profile[]} items A list of views (profiles).
* @property {integer} itemsPerPage The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.
* @property {string} kind Collection type.
* @property {string} nextLink Link to next page for this view (profile) collection.
* @property {string} previousLink Link to previous page for this view (profile) collection.
* @property {integer} startIndex The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.
* @property {integer} totalResults The total number of results for the query, regardless of the number of results in the response.
* @property {string} username Email ID of the authenticated user
*/
/**
* @typedef RealtimeData
* @memberOf! analytics(v3)
* @type object
* @property {object[]} columnHeaders Column headers that list dimension names followed by the metric names. The order of dimensions and metrics is same as specified in the request.
* @property {string} id Unique ID for this data response.
* @property {string} kind Resource type.
* @property {object} profileInfo Information for the view (profile), for which the real time data was requested.
* @property {object} query Real time data request query parameters.
* @property {array[]} rows Real time data rows, where each row contains a list of dimension values followed by the metric values. The order of dimensions and metrics is same as specified in the request.
* @property {string} selfLink Link to this page.
* @property {integer} totalResults The total number of rows for the query, regardless of the number of rows in the response.
* @property {object} totalsForAllResults Total values for the requested metrics over all the results, not just the results returned in this response. The order of the metric totals is same as the metric order specified in the request.
*/
/**
* @typedef RemarketingAudience
* @memberOf! analytics(v3)
* @type object
* @property {string} accountId Account ID to which this remarketing audience belongs.
* @property {object} audienceDefinition The simple audience definition that will cause a user to be added to an audience.
* @property {string} audienceType The type of audience, either SIMPLE or STATE_BASED.
* @property {string} created Time this remarketing audience was created.
* @property {string} description The description of this remarketing audience.
* @property {string} id Remarketing Audience ID.
* @property {string} internalWebPropertyId Internal ID for the web property to which this remarketing audience belongs.
* @property {string} kind Collection type.
* @property {analytics(v3).LinkedForeignAccount[]} linkedAdAccounts The linked ad accounts associated with this remarketing audience. A remarketing audience can have only one linkedAdAccount currently.
* @property {string[]} linkedViews The views (profiles) that this remarketing audience is linked to.
* @property {string} name The name of this remarketing audience.
* @property {object} stateBasedAudienceDefinition A state based audience definition that will cause a user to be added or removed from an audience.
* @property {string} updated Time this remarketing audience was last modified.
* @property {string} webPropertyId Web property ID of the form UA-XXXXX-YY to which this remarketing audience belongs.
*/
/**
* @typedef RemarketingAudiences
* @memberOf! analytics(v3)
* @type object
* @property {analytics(v3).RemarketingAudience[]} items A list of remarketing audiences.
* @property {integer} itemsPerPage The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.
* @property {string} kind Collection type.
* @property {string} nextLink Link to next page for this remarketing audience collection.
* @property {string} previousLink Link to previous page for this view (profile) collection.
* @property {integer} startIndex The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.
* @property {integer} totalResults The total number of results for the query, regardless of the number of results in the response.
* @property {string} username Email ID of the authenticated user
*/
/**
* @typedef Segment
* @memberOf! analytics(v3)
* @type object
* @property {string} created Time the segment was created.
* @property {string} definition Segment definition.
* @property {string} id Segment ID.
* @property {string} kind Resource type for Analytics segment.
* @property {string} name Segment name.
* @property {string} segmentId Segment ID. Can be used with the 'segment' parameter in Core Reporting API.
* @property {string} selfLink Link for this segment.
* @property {string} type Type for a segment. Possible values are "BUILT_IN" or "CUSTOM".
* @property {string} updated Time the segment was last modified.
*/
/**
* @typedef Segments
* @memberOf! analytics(v3)
* @type object
* @property {analytics(v3).Segment[]} items A list of segments.
* @property {integer} itemsPerPage The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.
* @property {string} kind Collection type for segments.
* @property {string} nextLink Link to next page for this segment collection.
* @property {string} previousLink Link to previous page for this segment collection.
* @property {integer} startIndex The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.
* @property {integer} totalResults The total number of results for the query, regardless of the number of results in the response.
* @property {string} username Email ID of the authenticated user
*/
/**
* @typedef UnsampledReport
* @memberOf! analytics(v3)
* @type object
* @property {string} accountId Account ID to which this unsampled report belongs.
* @property {object} cloudStorageDownloadDetails Download details for a file stored in Google Cloud Storage.
* @property {string} created Time this unsampled report was created.
* @property {string} dimensions The dimensions for the unsampled report.
* @property {string} downloadType The type of download you need to use for the report data file. Possible values include `GOOGLE_DRIVE` and `GOOGLE_CLOUD_STORAGE`. If the value is `GOOGLE_DRIVE`, see the `driveDownloadDetails` field. If the value is `GOOGLE_CLOUD_STORAGE`, see the `cloudStorageDownloadDetails` field.
* @property {object} driveDownloadDetails Download details for a file stored in Google Drive.
* @property {string} end-date The end date for the unsampled report.
* @property {string} filters The filters for the unsampled report.
* @property {string} id Unsampled report ID.
* @property {string} kind Resource type for an Analytics unsampled report.
* @property {string} metrics The metrics for the unsampled report.
* @property {string} profileId View (Profile) ID to which this unsampled report belongs.
* @property {string} segment The segment for the unsampled report.
* @property {string} selfLink Link for this unsampled report.
* @property {string} start-date The start date for the unsampled report.
* @property {string} status Status of this unsampled report. Possible values are PENDING, COMPLETED, or FAILED.
* @property {string} title Title of the unsampled report.
* @property {string} updated Time this unsampled report was last modified.
* @property {string} webPropertyId Web property ID to which this unsampled report belongs. The web property ID is of the form UA-XXXXX-YY.
*/
/**
* @typedef UnsampledReports
* @memberOf! analytics(v3)
* @type object
* @property {analytics(v3).UnsampledReport[]} items A list of unsampled reports.
* @property {integer} itemsPerPage The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.
* @property {string} kind Collection type.
* @property {string} nextLink Link to next page for this unsampled report collection.
* @property {string} previousLink Link to previous page for this unsampled report collection.
* @property {integer} startIndex The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.
* @property {integer} totalResults The total number of results for the query, regardless of the number of resources in the result.
* @property {string} username Email ID of the authenticated user
*/
/**
* @typedef Upload
* @memberOf! analytics(v3)
* @type object
* @property {string} accountId Account Id to which this upload belongs.
* @property {string} customDataSourceId Custom data source Id to which this data import belongs.
* @property {string[]} errors Data import errors collection.
* @property {string} id A unique ID for this upload.
* @property {string} kind Resource type for Analytics upload.
* @property {string} status Upload status. Possible values: PENDING, COMPLETED, FAILED, DELETING, DELETED.
*/
/**
* @typedef Uploads
* @memberOf! analytics(v3)
* @type object
* @property {analytics(v3).Upload[]} items A list of uploads.
* @property {integer} itemsPerPage The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.
* @property {string} kind Collection type.
* @property {string} nextLink Link to next page for this upload collection.
* @property {string} previousLink Link to previous page for this upload collection.
* @property {integer} startIndex The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.
* @property {integer} totalResults The total number of results for the query, regardless of the number of resources in the result.
*/
/**
* @typedef UserRef
* @memberOf! analytics(v3)
* @type object
* @property {string} email Email ID of this user.
* @property {string} id User ID.
* @property {string} kind
*/
/**
* @typedef WebPropertyRef
* @memberOf! analytics(v3)
* @type object
* @property {string} accountId Account ID to which this web property belongs.
* @property {string} href Link for this web property.
* @property {string} id Web property ID of the form UA-XXXXX-YY.
* @property {string} internalWebPropertyId Internal ID for this web property.
* @property {string} kind Analytics web property reference.
* @property {string} name Name of this web property.
*/
/**
* @typedef WebPropertySummary
* @memberOf! analytics(v3)
* @type object
* @property {string} id Web property ID of the form UA-XXXXX-YY.
* @property {string} internalWebPropertyId Internal ID for this web property.
* @property {string} kind Resource type for Analytics WebPropertySummary.
* @property {string} level Level for this web property. Possible values are STANDARD or PREMIUM.
* @property {string} name Web property name.
* @property {analytics(v3).ProfileSummary[]} profiles List of profiles under this web property.
* @property {boolean} starred Indicates whether this web property is starred or not.
* @property {string} websiteUrl Website url for this web property.
*/
/**
* @typedef Webproperties
* @memberOf! analytics(v3)
* @type object
* @property {analytics(v3).Webproperty[]} items A list of web properties.
* @property {integer} itemsPerPage The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.
* @property {string} kind Collection type.
* @property {string} nextLink Link to next page for this web property collection.
* @property {string} previousLink Link to previous page for this web property collection.
* @property {integer} startIndex The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.
* @property {integer} totalResults The total number of results for the query, regardless of the number of results in the response.
* @property {string} username Email ID of the authenticated user
*/
/**
* @typedef Webproperty
* @memberOf! analytics(v3)
* @type object
* @property {string} accountId Account ID to which this web property belongs.
* @property {object} childLink Child link for this web property. Points to the list of views (profiles) for this web property.
* @property {string} created Time this web property was created.
* @property {string} defaultProfileId Default view (profile) ID.
* @property {string} id Web property ID of the form UA-XXXXX-YY.
* @property {string} industryVertical The industry vertical/category selected for this web property.
* @property {string} internalWebPropertyId Internal ID for this web property.
* @property {string} kind Resource type for Analytics WebProperty.
* @property {string} level Level for this web property. Possible values are STANDARD or PREMIUM.
* @property {string} name Name of this web property.
* @property {object} parentLink Parent link for this web property. Points to the account to which this web property belongs.
* @property {object} permissions Permissions the user has for this web property.
* @property {integer} profileCount View (Profile) count for this web property.
* @property {string} selfLink Link for this web property.
* @property {boolean} starred Indicates whether this web property is starred or not.
* @property {string} updated Time this web property was last modified.
* @property {string} websiteUrl Website url for this web property.
*/
module.exports = Analytics;
|
| File | Statements | Branches | Functions | Lines | |||||
|---|---|---|---|---|---|---|---|---|---|
| v4.js | 30.77% | (4 / 13) | 0% | (0 / 6) | 0% | (0 / 2) | 30.77% | (4 / 13) |
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* Google Analytics Reporting API
*
* Accesses Analytics report data.
*
* @example
* var google = require('googleapis');
* var analyticsreporting = google.analyticsreporting('v4');
*
* @namespace analyticsreporting
* @type {Function}
* @version v4
* @variation v4
* @param {object=} options Options for Analyticsreporting
*/
function Analyticsreporting(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.reports = {
/**
* analyticsreporting.reports.batchGet
*
* @desc Returns the Analytics data.
*
* @alias analyticsreporting.reports.batchGet
* @memberOf! analyticsreporting(v4)
*
* @param {object} params Parameters for request
* @param {analyticsreporting(v4).GetReportsRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
batchGet: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://analyticsreporting.googleapis.com/v4/reports:batchGet',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
};
}
/**
* @typedef DateRange
* @memberOf! analyticsreporting(v4)
* @type object
* @property {string} endDate The end date for the query in the format `YYYY-MM-DD`.
* @property {string} startDate The start date for the query in the format `YYYY-MM-DD`.
*/
/**
* @typedef MetricFilter
* @memberOf! analyticsreporting(v4)
* @type object
* @property {string} operator Is the metric `EQUAL`, `LESS_THAN` or `GREATER_THAN` the
comparisonValue, the default is `EQUAL`. If the operator is
`IS_MISSING`, checks if the metric is missing and would ignore the
comparisonValue.
* @property {boolean} not Logical `NOT` operator. If this boolean is set to true, then the matching
metric values will be excluded in the report. The default is false.
* @property {string} metricName The metric that will be filtered on. A metricFilter must contain a metric
name. A metric name can be an alias earlier defined as a metric or it can
also be a metric expression.
* @property {string} comparisonValue The value to compare against.
*/
/**
* @typedef ReportRequest
* @memberOf! analyticsreporting(v4)
* @type object
* @property {analyticsreporting(v4).Pivot[]} pivots The pivot definitions. Requests can have a maximum of 2 pivots.
* @property {boolean} includeEmptyRows If set to false, the response does not include rows if all the retrieved
metrics are equal to zero. The default is false which will exclude these
rows.
* @property {analyticsreporting(v4).MetricFilterClause[]} metricFilterClauses The metric filter clauses. They are logically combined with the `AND`
operator. Metric filters look at only the first date range and not the
comparing date range. Note that filtering on metrics occurs after the
metrics are aggregated.
* @property {integer} pageSize Page size is for paging and specifies the maximum number of returned rows.
Page size should be >= 0. A query returns the default of 1,000 rows.
The Analytics Core Reporting API returns a maximum of 10,000 rows per
request, no matter how many you ask for. It can also return fewer rows
than requested, if there aren't as many dimension segments as you expect.
For instance, there are fewer than 300 possible values for `ga:country`,
so when segmenting only by country, you can't get more than 300 rows,
even if you set `pageSize` to a higher value.
* @property {boolean} hideTotals If set to true, hides the total of all metrics for all the matching rows,
for every date range. The default false and will return the totals.
* @property {boolean} hideValueRanges If set to true, hides the minimum and maximum across all matching rows.
The default is false and the value ranges are returned.
* @property {analyticsreporting(v4).CohortGroup} cohortGroup Cohort group associated with this request. If there is a cohort group
in the request the `ga:cohort` dimension must be present.
Every [ReportRequest](#ReportRequest) within a `batchGet` method must
contain the same `cohortGroup` definition.
* @property {string} filtersExpression Dimension or metric filters that restrict the data returned for your
request. To use the `filtersExpression`, supply a dimension or metric on
which to filter, followed by the filter expression. For example, the
following expression selects `ga:browser` dimension which starts with
Firefox; `ga:browser=~^Firefox`. For more information on dimensions
and metric filters, see
[Filters reference](https://developers.google.com/analytics/devguides/reporting/core/v3/reference#filters).
* @property {string} viewId The Analytics
[view ID](https://support.google.com/analytics/answer/1009618)
from which to retrieve data. Every [ReportRequest](#ReportRequest)
within a `batchGet` method must contain the same `viewId`.
* @property {analyticsreporting(v4).Metric[]} metrics The metrics requested.
Requests must specify at least one metric. Requests can have a
total of 10 metrics.
* @property {analyticsreporting(v4).DimensionFilterClause[]} dimensionFilterClauses The dimension filter clauses for filtering Dimension Values. They are
logically combined with the `AND` operator. Note that filtering occurs
before any dimensions are aggregated, so that the returned metrics
represent the total for only the relevant dimensions.
* @property {analyticsreporting(v4).OrderBy[]} orderBys Sort order on output rows. To compare two rows, the elements of the
following are applied in order until a difference is found. All date
ranges in the output get the same row order.
* @property {analyticsreporting(v4).Segment[]} segments Segment the data returned for the request. A segment definition helps look
at a subset of the segment request. A request can contain up to four
segments. Every [ReportRequest](#ReportRequest) within a
`batchGet` method must contain the same `segments` definition. Requests
with segments must have the `ga:segment` dimension.
* @property {string} samplingLevel The desired report
[sample](https://support.google.com/analytics/answer/2637192) size.
If the the `samplingLevel` field is unspecified the `DEFAULT` sampling
level is used. Every [ReportRequest](#ReportRequest) within a
`batchGet` method must contain the same `samplingLevel` definition. See
[developer guide](/analytics/devguides/reporting/core/v4/basics#sampling)
for details.
* @property {analyticsreporting(v4).Dimension[]} dimensions The dimensions requested.
Requests can have a total of 7 dimensions.
* @property {analyticsreporting(v4).DateRange[]} dateRanges Date ranges in the request. The request can have a maximum of 2 date
ranges. The response will contain a set of metric values for each
combination of the dimensions for each date range in the request. So, if
there are two date ranges, there will be two set of metric values, one for
the original date range and one for the second date range.
The `reportRequest.dateRanges` field should not be specified for cohorts
or Lifetime value requests.
If a date range is not provided, the default date range is (startDate:
current date - 7 days, endDate: current date - 1 day). Every
[ReportRequest](#ReportRequest) within a `batchGet` method must
contain the same `dateRanges` definition.
* @property {string} pageToken A continuation token to get the next page of the results. Adding this to
the request will return the rows after the pageToken. The pageToken should
be the value returned in the nextPageToken parameter in the response to
the GetReports request.
*/
/**
* @typedef Dimension
* @memberOf! analyticsreporting(v4)
* @type object
* @property {string[]} histogramBuckets If non-empty, we place dimension values into buckets after string to
int64. Dimension values that are not the string representation of an
integral value will be converted to zero. The bucket values have to be in
increasing order. Each bucket is closed on the lower end, and open on the
upper end. The "first" bucket includes all values less than the first
boundary, the "last" bucket includes all values up to infinity. Dimension
values that fall in a bucket get transformed to a new dimension value. For
example, if one gives a list of "0, 1, 3, 4, 7", then we return the
following buckets:
- bucket #1: values < 0, dimension value "<0"
- bucket #2: values in [0,1), dimension value "0"
- bucket #3: values in [1,3), dimension value "1-2"
- bucket #4: values in [3,4), dimension value "3"
- bucket #5: values in [4,7), dimension value "4-6"
- bucket #6: values >= 7, dimension value "7+"
NOTE: If you are applying histogram mutation on any dimension, and using
that dimension in sort, you will want to use the sort type
`HISTOGRAM_BUCKET` for that purpose. Without that the dimension values
will be sorted according to dictionary
(lexicographic) order. For example the ascending dictionary order is:
"<50", "1001+", "121-1000", "50-120"
And the ascending `HISTOGRAM_BUCKET` order is:
"<50", "50-120", "121-1000", "1001+"
The client has to explicitly request `"orderType": "HISTOGRAM_BUCKET"`
for a histogram-mutated dimension.
* @property {string} name Name of the dimension to fetch, for example `ga:browser`.
*/
/**
* @typedef SimpleSegment
* @memberOf! analyticsreporting(v4)
* @type object
* @property {analyticsreporting(v4).OrFiltersForSegment[]} orFiltersForSegment A list of segment filters groups which are combined with logical `AND`
operator.
*/
/**
* @typedef DynamicSegment
* @memberOf! analyticsreporting(v4)
* @type object
* @property {analyticsreporting(v4).SegmentDefinition} sessionSegment Session Segment to select sessions to include in the segment.
* @property {string} name The name of the dynamic segment.
* @property {analyticsreporting(v4).SegmentDefinition} userSegment User Segment to select users to include in the segment.
*/
/**
* @typedef ColumnHeader
* @memberOf! analyticsreporting(v4)
* @type object
* @property {string[]} dimensions The dimension names in the response.
* @property {analyticsreporting(v4).MetricHeader} metricHeader Metric headers for the metrics in the response.
*/
/**
* @typedef SegmentFilterClause
* @memberOf! analyticsreporting(v4)
* @type object
* @property {boolean} not Matches the complement (`!`) of the filter.
* @property {analyticsreporting(v4).SegmentDimensionFilter} dimensionFilter Dimension Filter for the segment definition.
* @property {analyticsreporting(v4).SegmentMetricFilter} metricFilter Metric Filter for the segment definition.
*/
/**
* @typedef MetricFilterClause
* @memberOf! analyticsreporting(v4)
* @type object
* @property {string} operator The operator for combining multiple metric filters. If unspecified, it is
treated as an `OR`.
* @property {analyticsreporting(v4).MetricFilter[]} filters The repeated set of filters. They are logically combined based on the
operator specified.
*/
/**
* @typedef Cohort
* @memberOf! analyticsreporting(v4)
* @type object
* @property {string} name A unique name for the cohort. If not defined name will be auto-generated
with values cohort_[1234...].
* @property {analyticsreporting(v4).DateRange} dateRange This is used for `FIRST_VISIT_DATE` cohort, the cohort selects users
whose first visit date is between start date and end date defined in the
DateRange. The date ranges should be aligned for cohort requests. If the
request contains `ga:cohortNthDay` it should be exactly one day long,
if `ga:cohortNthWeek` it should be aligned to the week boundary (starting
at Sunday and ending Saturday), and for `ga:cohortNthMonth` the date range
should be aligned to the month (starting at the first and ending on the
last day of the month).
For LTV requests there are no such restrictions.
You do not need to supply a date range for the
`reportsRequest.dateRanges` field.
* @property {string} type Type of the cohort. The only supported type as of now is
`FIRST_VISIT_DATE`. If this field is unspecified the cohort is treated
as `FIRST_VISIT_DATE` type cohort.
*/
/**
* @typedef ReportRow
* @memberOf! analyticsreporting(v4)
* @type object
* @property {string[]} dimensions List of requested dimensions.
* @property {analyticsreporting(v4).DateRangeValues[]} metrics List of metrics for each requested DateRange.
*/
/**
* @typedef OrFiltersForSegment
* @memberOf! analyticsreporting(v4)
* @type object
* @property {analyticsreporting(v4).SegmentFilterClause[]} segmentFilterClauses List of segment filters to be combined with a `OR` operator.
*/
/**
* @typedef MetricHeader
* @memberOf! analyticsreporting(v4)
* @type object
* @property {analyticsreporting(v4).PivotHeader[]} pivotHeaders Headers for the pivots in the response.
* @property {analyticsreporting(v4).MetricHeaderEntry[]} metricHeaderEntries Headers for the metrics in the response.
*/
/**
* @typedef DimensionFilterClause
* @memberOf! analyticsreporting(v4)
* @type object
* @property {string} operator The operator for combining multiple dimension filters. If unspecified, it
is treated as an `OR`.
* @property {analyticsreporting(v4).DimensionFilter[]} filters The repeated set of filters. They are logically combined based on the
operator specified.
*/
/**
* @typedef GetReportsResponse
* @memberOf! analyticsreporting(v4)
* @type object
* @property {analyticsreporting(v4).Report[]} reports Responses corresponding to each of the request.
*/
/**
* @typedef SequenceSegment
* @memberOf! analyticsreporting(v4)
* @type object
* @property {analyticsreporting(v4).SegmentSequenceStep[]} segmentSequenceSteps The list of steps in the sequence.
* @property {boolean} firstStepShouldMatchFirstHit If set, first step condition must match the first hit of the visitor (in
the date range).
*/
/**
* @typedef SegmentMetricFilter
* @memberOf! analyticsreporting(v4)
* @type object
* @property {string} operator Specifies is the operation to perform to compare the metric. The default
is `EQUAL`.
* @property {string} metricName The metric that will be filtered on. A `metricFilter` must contain a
metric name.
* @property {string} scope Scope for a metric defines the level at which that metric is defined. The
specified metric scope must be equal to or greater than its primary scope
as defined in the data model. The primary scope is defined by if the
segment is selecting users or sessions.
* @property {string} maxComparisonValue Max comparison value is only used for `BETWEEN` operator.
* @property {string} comparisonValue The value to compare against. If the operator is `BETWEEN`, this value is
treated as minimum comparison value.
*/
/**
* @typedef DateRangeValues
* @memberOf! analyticsreporting(v4)
* @type object
* @property {string[]} values Each value corresponds to each Metric in the request.
* @property {analyticsreporting(v4).PivotValueRegion[]} pivotValueRegions The values of each pivot region.
*/
/**
* @typedef CohortGroup
* @memberOf! analyticsreporting(v4)
* @type object
* @property {analyticsreporting(v4).Cohort[]} cohorts The definition for the cohort.
* @property {boolean} lifetimeValue Enable Life Time Value (LTV). LTV measures lifetime value for users
acquired through different channels.
Please see:
[Cohort Analysis](https://support.google.com/analytics/answer/6074676) and
[Lifetime Value](https://support.google.com/analytics/answer/6182550)
If the value of lifetimeValue is false:
- The metric values are similar to the values in the web interface cohort
report.
- The cohort definition date ranges must be aligned to the calendar week
and month. i.e. while requesting `ga:cohortNthWeek` the `startDate` in
the cohort definition should be a Sunday and the `endDate` should be the
following Saturday, and for `ga:cohortNthMonth`, the `startDate`
should be the 1st of the month and `endDate` should be the last day
of the month.
When the lifetimeValue is true:
- The metric values will correspond to the values in the web interface
LifeTime value report.
- The Lifetime Value report shows you how user value (Revenue) and
engagement (Appviews, Goal Completions, Sessions, and Session Duration)
grow during the 90 days after a user is acquired.
- The metrics are calculated as a cumulative average per user per the time
increment.
- The cohort definition date ranges need not be aligned to the calendar
week and month boundaries.
- The `viewId` must be an
[app view ID](https://support.google.com/analytics/answer/2649553#WebVersusAppViews)
*/
/**
* @typedef GetReportsRequest
* @memberOf! analyticsreporting(v4)
* @type object
* @property {analyticsreporting(v4).ReportRequest[]} reportRequests Requests, each request will have a separate response.
There can be a maximum of 5 requests. All requests should have the same
`dateRanges`, `viewId`, `segments`, `samplingLevel`, and `cohortGroup`.
*/
/**
* @typedef Pivot
* @memberOf! analyticsreporting(v4)
* @type object
* @property {integer} startGroup If k metrics were requested, then the response will contain some
data-dependent multiple of k columns in the report. E.g., if you pivoted
on the dimension `ga:browser` then you'd get k columns for "Firefox", k
columns for "IE", k columns for "Chrome", etc. The ordering of the groups
of columns is determined by descending order of "total" for the first of
the k values. Ties are broken by lexicographic ordering of the first
pivot dimension, then lexicographic ordering of the second pivot
dimension, and so on. E.g., if the totals for the first value for
Firefox, IE, and Chrome were 8, 2, 8, respectively, the order of columns
would be Chrome, Firefox, IE.
The following let you choose which of the groups of k columns are
included in the response.
* @property {analyticsreporting(v4).Metric[]} metrics The pivot metrics. Pivot metrics are part of the
restriction on total number of metrics allowed in the request.
* @property {analyticsreporting(v4).Dimension[]} dimensions A list of dimensions to show as pivot columns. A Pivot can have a maximum
of 4 dimensions. Pivot dimensions are part of the restriction on the
total number of dimensions allowed in the request.
* @property {analyticsreporting(v4).DimensionFilterClause[]} dimensionFilterClauses DimensionFilterClauses are logically combined with an `AND` operator: only
data that is included by all these DimensionFilterClauses contributes to
the values in this pivot region. Dimension filters can be used to restrict
the columns shown in the pivot region. For example if you have
`ga:browser` as the requested dimension in the pivot region, and you
specify key filters to restrict `ga:browser` to only "IE" or "Firefox",
then only those two browsers would show up as columns.
* @property {integer} maxGroupCount Specifies the maximum number of groups to return.
The default value is 10, also the maximum value is 1,000.
*/
/**
* @typedef PivotHeaderEntry
* @memberOf! analyticsreporting(v4)
* @type object
* @property {string[]} dimensionValues The values for the dimensions in the pivot.
* @property {string[]} dimensionNames The name of the dimensions in the pivot response.
* @property {analyticsreporting(v4).MetricHeaderEntry} metric The metric header for the metric in the pivot.
*/
/**
* @typedef SegmentFilter
* @memberOf! analyticsreporting(v4)
* @type object
* @property {analyticsreporting(v4).SequenceSegment} sequenceSegment Sequence conditions consist of one or more steps, where each step is
defined by one or more dimension/metric conditions. Multiple steps can
be combined with special sequence operators.
* @property {boolean} not If true, match the complement of simple or sequence segment.
For example, to match all visits not from "New York", we can define the
segment as follows:
"sessionSegment": {
"segmentFilters": [{
"simpleSegment" :{
"orFiltersForSegment": [{
"segmentFilterClauses":[{
"dimensionFilter": {
"dimensionName": "ga:city",
"expressions": ["New York"]
}
}]
}]
},
"not": "True"
}]
},
* @property {analyticsreporting(v4).SimpleSegment} simpleSegment A Simple segment conditions consist of one or more dimension/metric
conditions that can be combined
*/
/**
* @typedef SegmentDefinition
* @memberOf! analyticsreporting(v4)
* @type object
* @property {analyticsreporting(v4).SegmentFilter[]} segmentFilters A segment is defined by a set of segment filters which are combined
together with a logical `AND` operation.
*/
/**
* @typedef MetricHeaderEntry
* @memberOf! analyticsreporting(v4)
* @type object
* @property {string} name The name of the header.
* @property {string} type The type of the metric, for example `INTEGER`.
*/
/**
* @typedef ReportData
* @memberOf! analyticsreporting(v4)
* @type object
* @property {integer} rowCount Total number of matching rows for this query.
* @property {analyticsreporting(v4).ReportRow[]} rows There's one ReportRow for every unique combination of dimensions.
* @property {boolean} isDataGolden Indicates if response to this request is golden or not. Data is
golden when the exact same request will not produce any new results if
asked at a later point in time.
* @property {string} dataLastRefreshed The last time the data in the report was refreshed. All the hits received
before this timestamp are included in the calculation of the report.
* @property {analyticsreporting(v4).DateRangeValues[]} maximums Minimum and maximum values seen over all matching rows. These are both
empty when `hideValueRanges` in the request is false, or when
rowCount is zero.
* @property {string[]} samplingSpaceSizes If the results are
[sampled](https://support.google.com/analytics/answer/2637192),
this returns the total number of
samples present, one entry per date range. If the results are not sampled
this field will not be defined. See
[developer guide](/analytics/devguides/reporting/core/v4/basics#sampling)
for details.
* @property {analyticsreporting(v4).DateRangeValues[]} minimums Minimum and maximum values seen over all matching rows. These are both
empty when `hideValueRanges` in the request is false, or when
rowCount is zero.
* @property {analyticsreporting(v4).DateRangeValues[]} totals For each requested date range, for the set of all rows that match
the query, every requested value format gets a total. The total
for a value format is computed by first totaling the metrics
mentioned in the value format and then evaluating the value
format as a scalar expression. E.g., The "totals" for
`3 / (ga:sessions + 2)` we compute
`3 / ((sum of all relevant ga:sessions) + 2)`.
Totals are computed before pagination.
* @property {string[]} samplesReadCounts If the results are
[sampled](https://support.google.com/analytics/answer/2637192),
this returns the total number of samples read, one entry per date range.
If the results are not sampled this field will not be defined. See
[developer guide](/analytics/devguides/reporting/core/v4/basics#sampling)
for details.
*/
/**
* @typedef DimensionFilter
* @memberOf! analyticsreporting(v4)
* @type object
* @property {string} dimensionName The dimension to filter on. A DimensionFilter must contain a dimension.
* @property {string} operator How to match the dimension to the expression. The default is REGEXP.
* @property {boolean} not Logical `NOT` operator. If this boolean is set to true, then the matching
dimension values will be excluded in the report. The default is false.
* @property {string[]} expressions Strings or regular expression to match against. Only the first value of
the list is used for comparison unless the operator is `IN_LIST`.
If `IN_LIST` operator, then the entire list is used to filter the
dimensions as explained in the description of the `IN_LIST` operator.
* @property {boolean} caseSensitive Should the match be case sensitive? Default is false.
*/
/**
* @typedef SegmentDimensionFilter
* @memberOf! analyticsreporting(v4)
* @type object
* @property {string} dimensionName Name of the dimension for which the filter is being applied.
* @property {string} operator The operator to use to match the dimension with the expressions.
* @property {string[]} expressions The list of expressions, only the first element is used for all operators
* @property {boolean} caseSensitive Should the match be case sensitive, ignored for `IN_LIST` operator.
* @property {string} minComparisonValue Minimum comparison values for `BETWEEN` match type.
* @property {string} maxComparisonValue Maximum comparison values for `BETWEEN` match type.
*/
/**
* @typedef OrderBy
* @memberOf! analyticsreporting(v4)
* @type object
* @property {string} fieldName The field which to sort by. The default sort order is ascending. Example:
`ga:browser`.
Note, that you can only specify one field for sort here. For example,
`ga:browser, ga:city` is not valid.
* @property {string} orderType The order type. The default orderType is `VALUE`.
* @property {string} sortOrder The sorting order for the field.
*/
/**
* @typedef Segment
* @memberOf! analyticsreporting(v4)
* @type object
* @property {analyticsreporting(v4).DynamicSegment} dynamicSegment A dynamic segment definition in the request.
* @property {string} segmentId The segment ID of a built-in or custom segment, for example `gaid::-3`.
*/
/**
* @typedef SegmentSequenceStep
* @memberOf! analyticsreporting(v4)
* @type object
* @property {analyticsreporting(v4).OrFiltersForSegment[]} orFiltersForSegment A sequence is specified with a list of Or grouped filters which are
combined with `AND` operator.
* @property {string} matchType Specifies if the step immediately precedes or can be any time before the
next step.
*/
/**
* @typedef Metric
* @memberOf! analyticsreporting(v4)
* @type object
* @property {string} alias An alias for the metric expression is an alternate name for the
expression. The alias can be used for filtering and sorting. This field
is optional and is useful if the expression is not a single metric but
a complex expression which cannot be used in filtering and sorting.
The alias is also used in the response column header.
* @property {string} expression A metric expression in the request. An expression is constructed from one
or more metrics and numbers. Accepted operators include: Plus (+), Minus
(-), Negation (Unary -), Divided by (/), Multiplied by (*), Parenthesis,
Positive cardinal numbers (0-9), can include decimals and is limited to
1024 characters. Example `ga:totalRefunds/ga:users`, in most cases the
metric expression is just a single metric name like `ga:users`.
Adding mixed `MetricType` (E.g., `CURRENCY` + `PERCENTAGE`) metrics
will result in unexpected results.
* @property {string} formattingType Specifies how the metric expression should be formatted, for example
`INTEGER`.
*/
/**
* @typedef PivotValueRegion
* @memberOf! analyticsreporting(v4)
* @type object
* @property {string[]} values The values of the metrics in each of the pivot regions.
*/
/**
* @typedef Report
* @memberOf! analyticsreporting(v4)
* @type object
* @property {analyticsreporting(v4).ColumnHeader} columnHeader The column headers.
* @property {analyticsreporting(v4).ReportData} data Response data.
* @property {string} nextPageToken Page token to retrieve the next page of results in the list.
*/
/**
* @typedef PivotHeader
* @memberOf! analyticsreporting(v4)
* @type object
* @property {analyticsreporting(v4).PivotHeaderEntry[]} pivotHeaderEntries A single pivot section header.
* @property {integer} totalPivotGroupsCount The total number of groups for this pivot.
*/
module.exports = Analyticsreporting;
|
| File | Statements | Branches | Functions | Lines | |||||
|---|---|---|---|---|---|---|---|---|---|
| v2.js | 1.13% | (4 / 353) | 0% | (0 / 230) | 0% | (0 / 58) | 1.13% | (4 / 353) |
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 1791 1792 1793 1794 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822 1823 1824 1825 1826 1827 1828 1829 1830 1831 1832 1833 1834 1835 1836 1837 1838 1839 1840 1841 1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853 1854 1855 1856 1857 1858 1859 1860 1861 1862 1863 1864 1865 1866 1867 1868 1869 1870 1871 1872 1873 1874 1875 1876 1877 1878 1879 1880 1881 1882 1883 1884 1885 1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896 1897 1898 1899 1900 1901 1902 1903 1904 1905 1906 1907 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 1939 1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 2026 2027 2028 2029 2030 2031 2032 2033 2034 2035 2036 2037 2038 2039 2040 2041 2042 2043 2044 2045 2046 2047 2048 2049 2050 2051 2052 2053 2054 2055 2056 2057 2058 2059 2060 2061 2062 2063 2064 2065 2066 2067 2068 2069 2070 2071 2072 2073 2074 2075 2076 2077 2078 2079 2080 2081 2082 2083 2084 2085 2086 2087 2088 2089 2090 2091 2092 2093 2094 2095 2096 2097 2098 2099 2100 2101 2102 2103 2104 2105 2106 2107 2108 2109 2110 2111 2112 2113 2114 2115 2116 2117 2118 2119 2120 2121 2122 2123 2124 2125 2126 2127 2128 2129 2130 2131 2132 2133 2134 2135 2136 2137 2138 2139 2140 2141 2142 2143 2144 2145 2146 2147 2148 2149 2150 2151 2152 2153 2154 2155 2156 2157 2158 2159 2160 2161 2162 2163 2164 2165 2166 2167 2168 2169 2170 2171 2172 2173 2174 2175 2176 2177 2178 2179 2180 2181 2182 2183 2184 2185 2186 2187 2188 2189 2190 2191 2192 2193 2194 2195 2196 2197 2198 2199 2200 2201 2202 2203 2204 2205 2206 2207 2208 2209 2210 2211 2212 2213 2214 2215 2216 2217 2218 2219 2220 2221 2222 2223 2224 2225 2226 2227 2228 2229 2230 2231 2232 2233 2234 2235 2236 2237 2238 2239 2240 2241 2242 2243 2244 2245 2246 2247 2248 2249 2250 2251 2252 2253 2254 2255 2256 2257 2258 2259 2260 2261 2262 2263 2264 2265 2266 2267 2268 2269 2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 2280 2281 2282 2283 2284 2285 2286 2287 2288 2289 2290 2291 2292 2293 2294 2295 2296 2297 2298 2299 2300 2301 2302 2303 2304 2305 2306 2307 2308 2309 2310 2311 2312 2313 2314 2315 2316 2317 2318 2319 2320 2321 2322 2323 2324 2325 2326 2327 2328 2329 2330 2331 2332 2333 2334 2335 2336 2337 2338 2339 2340 2341 2342 2343 2344 2345 2346 2347 2348 2349 2350 2351 2352 2353 2354 2355 2356 2357 2358 2359 2360 2361 2362 2363 2364 2365 2366 2367 2368 2369 2370 2371 2372 2373 2374 2375 2376 2377 2378 2379 2380 2381 2382 2383 2384 2385 2386 2387 2388 2389 2390 2391 2392 2393 2394 2395 2396 2397 2398 2399 2400 2401 2402 2403 2404 2405 2406 2407 2408 2409 2410 2411 2412 2413 2414 2415 2416 2417 2418 2419 2420 2421 2422 2423 2424 2425 2426 2427 2428 2429 2430 2431 2432 2433 2434 2435 2436 2437 2438 2439 2440 2441 2442 2443 2444 2445 2446 2447 2448 2449 2450 2451 2452 2453 2454 2455 2456 2457 2458 2459 2460 2461 2462 2463 2464 2465 2466 2467 2468 2469 2470 2471 2472 2473 2474 2475 2476 2477 2478 2479 2480 2481 2482 2483 2484 2485 2486 2487 2488 2489 2490 2491 2492 2493 2494 2495 2496 2497 2498 2499 2500 2501 2502 2503 2504 2505 2506 2507 2508 2509 2510 2511 2512 2513 2514 2515 2516 2517 2518 2519 2520 2521 2522 2523 2524 2525 2526 2527 2528 2529 2530 2531 2532 2533 2534 2535 2536 2537 2538 2539 2540 2541 2542 2543 2544 2545 2546 2547 2548 2549 2550 2551 2552 2553 2554 2555 2556 2557 2558 2559 2560 2561 2562 2563 2564 2565 2566 2567 2568 2569 2570 2571 2572 2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 2730 2731 2732 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* Google Play Developer API
*
* Lets Android application developers access their Google Play accounts.
*
* @example
* var google = require('googleapis');
* var androidpublisher = google.androidpublisher('v2');
*
* @namespace androidpublisher
* @type {Function}
* @version v2
* @variation v2
* @param {object=} options Options for Androidpublisher
*/
function Androidpublisher(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.edits = {
/**
* androidpublisher.edits.commit
*
* @desc Commits/applies the changes made in this edit back to the app.
*
* @alias androidpublisher.edits.commit
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {string} params.editId Unique identifier for this edit.
* @param {string} params.packageName Unique identifier for the Android app that is being updated; for example, "com.spiffygame".
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
commit: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/edits/{editId}:commit',
method: 'POST'
}, options),
params: params,
requiredParams: ['packageName', 'editId'],
pathParams: ['editId', 'packageName'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.edits.delete
*
* @desc Deletes an edit for an app. Creating a new edit will automatically delete any of your previous edits so this method need only be called if you want to preemptively abandon an edit.
*
* @alias androidpublisher.edits.delete
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {string} params.editId Unique identifier for this edit.
* @param {string} params.packageName Unique identifier for the Android app that is being updated; for example, "com.spiffygame".
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/edits/{editId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['packageName', 'editId'],
pathParams: ['editId', 'packageName'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.edits.get
*
* @desc Returns information about the edit specified. Calls will fail if the edit is no long active (e.g. has been deleted, superseded or expired).
*
* @alias androidpublisher.edits.get
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {string} params.editId Unique identifier for this edit.
* @param {string} params.packageName Unique identifier for the Android app that is being updated; for example, "com.spiffygame".
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/edits/{editId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['packageName', 'editId'],
pathParams: ['editId', 'packageName'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.edits.insert
*
* @desc Creates a new edit for an app, populated with the app's current state.
*
* @alias androidpublisher.edits.insert
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {string} params.packageName Unique identifier for the Android app that is being updated; for example, "com.spiffygame".
* @param {androidpublisher(v2).AppEdit} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/edits',
method: 'POST'
}, options),
params: params,
requiredParams: ['packageName'],
pathParams: ['packageName'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.edits.validate
*
* @desc Checks that the edit can be successfully committed. The edit's changes are not applied to the live app.
*
* @alias androidpublisher.edits.validate
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {string} params.editId Unique identifier for this edit.
* @param {string} params.packageName Unique identifier for the Android app that is being updated; for example, "com.spiffygame".
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
validate: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/edits/{editId}:validate',
method: 'POST'
}, options),
params: params,
requiredParams: ['packageName', 'editId'],
pathParams: ['editId', 'packageName'],
context: self
};
return createAPIRequest(parameters, callback);
},
apklistings: {
/**
* androidpublisher.edits.apklistings.delete
*
* @desc Deletes the APK-specific localized listing for a specified APK and language code.
*
* @alias androidpublisher.edits.apklistings.delete
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {integer} params.apkVersionCode The APK version code whose APK-specific listings should be read or modified.
* @param {string} params.editId Unique identifier for this edit.
* @param {string} params.language The language code (a BCP-47 language tag) of the APK-specific localized listing to read or modify. For example, to select Austrian German, pass "de-AT".
* @param {string} params.packageName Unique identifier for the Android app that is being updated; for example, "com.spiffygame".
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/listings/{language}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['packageName', 'editId', 'apkVersionCode', 'language'],
pathParams: ['apkVersionCode', 'editId', 'language', 'packageName'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.edits.apklistings.deleteall
*
* @desc Deletes all the APK-specific localized listings for a specified APK.
*
* @alias androidpublisher.edits.apklistings.deleteall
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {integer} params.apkVersionCode The APK version code whose APK-specific listings should be read or modified.
* @param {string} params.editId Unique identifier for this edit.
* @param {string} params.packageName Unique identifier for the Android app that is being updated; for example, "com.spiffygame".
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
deleteall: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/listings',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['packageName', 'editId', 'apkVersionCode'],
pathParams: ['apkVersionCode', 'editId', 'packageName'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.edits.apklistings.get
*
* @desc Fetches the APK-specific localized listing for a specified APK and language code.
*
* @alias androidpublisher.edits.apklistings.get
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {integer} params.apkVersionCode The APK version code whose APK-specific listings should be read or modified.
* @param {string} params.editId Unique identifier for this edit.
* @param {string} params.language The language code (a BCP-47 language tag) of the APK-specific localized listing to read or modify. For example, to select Austrian German, pass "de-AT".
* @param {string} params.packageName Unique identifier for the Android app that is being updated; for example, "com.spiffygame".
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/listings/{language}',
method: 'GET'
}, options),
params: params,
requiredParams: ['packageName', 'editId', 'apkVersionCode', 'language'],
pathParams: ['apkVersionCode', 'editId', 'language', 'packageName'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.edits.apklistings.list
*
* @desc Lists all the APK-specific localized listings for a specified APK.
*
* @alias androidpublisher.edits.apklistings.list
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {integer} params.apkVersionCode The APK version code whose APK-specific listings should be read or modified.
* @param {string} params.editId Unique identifier for this edit.
* @param {string} params.packageName Unique identifier for the Android app that is being updated; for example, "com.spiffygame".
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/listings',
method: 'GET'
}, options),
params: params,
requiredParams: ['packageName', 'editId', 'apkVersionCode'],
pathParams: ['apkVersionCode', 'editId', 'packageName'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.edits.apklistings.patch
*
* @desc Updates or creates the APK-specific localized listing for a specified APK and language code. This method supports patch semantics.
*
* @alias androidpublisher.edits.apklistings.patch
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {integer} params.apkVersionCode The APK version code whose APK-specific listings should be read or modified.
* @param {string} params.editId Unique identifier for this edit.
* @param {string} params.language The language code (a BCP-47 language tag) of the APK-specific localized listing to read or modify. For example, to select Austrian German, pass "de-AT".
* @param {string} params.packageName Unique identifier for the Android app that is being updated; for example, "com.spiffygame".
* @param {androidpublisher(v2).ApkListing} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/listings/{language}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['packageName', 'editId', 'apkVersionCode', 'language'],
pathParams: ['apkVersionCode', 'editId', 'language', 'packageName'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.edits.apklistings.update
*
* @desc Updates or creates the APK-specific localized listing for a specified APK and language code.
*
* @alias androidpublisher.edits.apklistings.update
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {integer} params.apkVersionCode The APK version code whose APK-specific listings should be read or modified.
* @param {string} params.editId Unique identifier for this edit.
* @param {string} params.language The language code (a BCP-47 language tag) of the APK-specific localized listing to read or modify. For example, to select Austrian German, pass "de-AT".
* @param {string} params.packageName Unique identifier for the Android app that is being updated; for example, "com.spiffygame".
* @param {androidpublisher(v2).ApkListing} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/listings/{language}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['packageName', 'editId', 'apkVersionCode', 'language'],
pathParams: ['apkVersionCode', 'editId', 'language', 'packageName'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
apks: {
/**
* androidpublisher.edits.apks.addexternallyhosted
*
* @desc Creates a new APK without uploading the APK itself to Google Play, instead hosting the APK at a specified URL. This function is only available to enterprises using Google Play for Work whose application is configured to restrict distribution to the enterprise domain.
*
* @alias androidpublisher.edits.apks.addexternallyhosted
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {string} params.editId Unique identifier for this edit.
* @param {string} params.packageName Unique identifier for the Android app that is being updated; for example, "com.spiffygame".
* @param {androidpublisher(v2).ApksAddExternallyHostedRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
addexternallyhosted: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/edits/{editId}/apks/externallyHosted',
method: 'POST'
}, options),
params: params,
requiredParams: ['packageName', 'editId'],
pathParams: ['editId', 'packageName'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.edits.apks.list
*
*
*
* @alias androidpublisher.edits.apks.list
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {string} params.editId Unique identifier for this edit.
* @param {string} params.packageName Unique identifier for the Android app that is being updated; for example, "com.spiffygame".
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/edits/{editId}/apks',
method: 'GET'
}, options),
params: params,
requiredParams: ['packageName', 'editId'],
pathParams: ['editId', 'packageName'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.edits.apks.upload
*
*
*
* @alias androidpublisher.edits.apks.upload
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {string} params.editId Unique identifier for this edit.
* @param {string} params.packageName Unique identifier for the Android app that is being updated; for example, "com.spiffygame".
* @param {object} params.media Media object
* @param {string} params.media.mimeType Media mime-type
* @param {string|object} params.media.body Media body contents
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
upload: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/edits/{editId}/apks',
method: 'POST'
}, options),
params: params,
mediaUrl: 'https://www.googleapis.com/upload/androidpublisher/v2/applications/{packageName}/edits/{editId}/apks',
requiredParams: ['packageName', 'editId'],
pathParams: ['editId', 'packageName'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
deobfuscationfiles: {
/**
* androidpublisher.edits.deobfuscationfiles.upload
*
* @desc Uploads the deobfuscation file of the specified APK. If a deobfuscation file already exists, it will be replaced.
*
* @alias androidpublisher.edits.deobfuscationfiles.upload
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {integer} params.apkVersionCode The version code of the APK whose deobfuscation file is being uploaded.
* @param {string} params.deobfuscationFileType
* @param {string} params.editId Unique identifier for this edit.
* @param {string} params.packageName Unique identifier of the Android app for which the deobfuscatiuon files are being uploaded; for example, "com.spiffygame".
* @param {object} params.media Media object
* @param {string} params.media.mimeType Media mime-type
* @param {string|object} params.media.body Media body contents
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
upload: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/deobfuscationFiles/{deobfuscationFileType}',
method: 'POST'
}, options),
params: params,
mediaUrl: 'https://www.googleapis.com/upload/androidpublisher/v2/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/deobfuscationFiles/{deobfuscationFileType}',
requiredParams: ['packageName', 'editId', 'apkVersionCode', 'deobfuscationFileType'],
pathParams: ['apkVersionCode', 'deobfuscationFileType', 'editId', 'packageName'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
details: {
/**
* androidpublisher.edits.details.get
*
* @desc Fetches app details for this edit. This includes the default language and developer support contact information.
*
* @alias androidpublisher.edits.details.get
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {string} params.editId Unique identifier for this edit.
* @param {string} params.packageName Unique identifier for the Android app that is being updated; for example, "com.spiffygame".
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/edits/{editId}/details',
method: 'GET'
}, options),
params: params,
requiredParams: ['packageName', 'editId'],
pathParams: ['editId', 'packageName'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.edits.details.patch
*
* @desc Updates app details for this edit. This method supports patch semantics.
*
* @alias androidpublisher.edits.details.patch
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {string} params.editId Unique identifier for this edit.
* @param {string} params.packageName Unique identifier for the Android app that is being updated; for example, "com.spiffygame".
* @param {androidpublisher(v2).AppDetails} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/edits/{editId}/details',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['packageName', 'editId'],
pathParams: ['editId', 'packageName'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.edits.details.update
*
* @desc Updates app details for this edit.
*
* @alias androidpublisher.edits.details.update
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {string} params.editId Unique identifier for this edit.
* @param {string} params.packageName Unique identifier for the Android app that is being updated; for example, "com.spiffygame".
* @param {androidpublisher(v2).AppDetails} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/edits/{editId}/details',
method: 'PUT'
}, options),
params: params,
requiredParams: ['packageName', 'editId'],
pathParams: ['editId', 'packageName'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
expansionfiles: {
/**
* androidpublisher.edits.expansionfiles.get
*
* @desc Fetches the Expansion File configuration for the APK specified.
*
* @alias androidpublisher.edits.expansionfiles.get
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {integer} params.apkVersionCode The version code of the APK whose Expansion File configuration is being read or modified.
* @param {string} params.editId Unique identifier for this edit.
* @param {string} params.expansionFileType
* @param {string} params.packageName Unique identifier for the Android app that is being updated; for example, "com.spiffygame".
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/expansionFiles/{expansionFileType}',
method: 'GET'
}, options),
params: params,
requiredParams: ['packageName', 'editId', 'apkVersionCode', 'expansionFileType'],
pathParams: ['apkVersionCode', 'editId', 'expansionFileType', 'packageName'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.edits.expansionfiles.patch
*
* @desc Updates the APK's Expansion File configuration to reference another APK's Expansion Files. To add a new Expansion File use the Upload method. This method supports patch semantics.
*
* @alias androidpublisher.edits.expansionfiles.patch
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {integer} params.apkVersionCode The version code of the APK whose Expansion File configuration is being read or modified.
* @param {string} params.editId Unique identifier for this edit.
* @param {string} params.expansionFileType
* @param {string} params.packageName Unique identifier for the Android app that is being updated; for example, "com.spiffygame".
* @param {androidpublisher(v2).ExpansionFile} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/expansionFiles/{expansionFileType}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['packageName', 'editId', 'apkVersionCode', 'expansionFileType'],
pathParams: ['apkVersionCode', 'editId', 'expansionFileType', 'packageName'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.edits.expansionfiles.update
*
* @desc Updates the APK's Expansion File configuration to reference another APK's Expansion Files. To add a new Expansion File use the Upload method.
*
* @alias androidpublisher.edits.expansionfiles.update
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {integer} params.apkVersionCode The version code of the APK whose Expansion File configuration is being read or modified.
* @param {string} params.editId Unique identifier for this edit.
* @param {string} params.expansionFileType
* @param {string} params.packageName Unique identifier for the Android app that is being updated; for example, "com.spiffygame".
* @param {androidpublisher(v2).ExpansionFile} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/expansionFiles/{expansionFileType}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['packageName', 'editId', 'apkVersionCode', 'expansionFileType'],
pathParams: ['apkVersionCode', 'editId', 'expansionFileType', 'packageName'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.edits.expansionfiles.upload
*
* @desc Uploads and attaches a new Expansion File to the APK specified.
*
* @alias androidpublisher.edits.expansionfiles.upload
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {integer} params.apkVersionCode The version code of the APK whose Expansion File configuration is being read or modified.
* @param {string} params.editId Unique identifier for this edit.
* @param {string} params.expansionFileType
* @param {string} params.packageName Unique identifier for the Android app that is being updated; for example, "com.spiffygame".
* @param {object} params.media Media object
* @param {string} params.media.mimeType Media mime-type
* @param {string|object} params.media.body Media body contents
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
upload: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/expansionFiles/{expansionFileType}',
method: 'POST'
}, options),
params: params,
mediaUrl: 'https://www.googleapis.com/upload/androidpublisher/v2/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/expansionFiles/{expansionFileType}',
requiredParams: ['packageName', 'editId', 'apkVersionCode', 'expansionFileType'],
pathParams: ['apkVersionCode', 'editId', 'expansionFileType', 'packageName'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
images: {
/**
* androidpublisher.edits.images.delete
*
* @desc Deletes the image (specified by id) from the edit.
*
* @alias androidpublisher.edits.images.delete
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {string} params.editId Unique identifier for this edit.
* @param {string} params.imageId Unique identifier an image within the set of images attached to this edit.
* @param {string} params.imageType
* @param {string} params.language The language code (a BCP-47 language tag) of the localized listing whose images are to read or modified. For example, to select Austrian German, pass "de-AT".
* @param {string} params.packageName Unique identifier for the Android app that is being updated; for example, "com.spiffygame".
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/edits/{editId}/listings/{language}/{imageType}/{imageId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['packageName', 'editId', 'language', 'imageType', 'imageId'],
pathParams: ['editId', 'imageId', 'imageType', 'language', 'packageName'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.edits.images.deleteall
*
* @desc Deletes all images for the specified language and image type.
*
* @alias androidpublisher.edits.images.deleteall
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {string} params.editId Unique identifier for this edit.
* @param {string} params.imageType
* @param {string} params.language The language code (a BCP-47 language tag) of the localized listing whose images are to read or modified. For example, to select Austrian German, pass "de-AT".
* @param {string} params.packageName Unique identifier for the Android app that is being updated; for example, "com.spiffygame".
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
deleteall: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/edits/{editId}/listings/{language}/{imageType}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['packageName', 'editId', 'language', 'imageType'],
pathParams: ['editId', 'imageType', 'language', 'packageName'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.edits.images.list
*
* @desc Lists all images for the specified language and image type.
*
* @alias androidpublisher.edits.images.list
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {string} params.editId Unique identifier for this edit.
* @param {string} params.imageType
* @param {string} params.language The language code (a BCP-47 language tag) of the localized listing whose images are to read or modified. For example, to select Austrian German, pass "de-AT".
* @param {string} params.packageName Unique identifier for the Android app that is being updated; for example, "com.spiffygame".
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/edits/{editId}/listings/{language}/{imageType}',
method: 'GET'
}, options),
params: params,
requiredParams: ['packageName', 'editId', 'language', 'imageType'],
pathParams: ['editId', 'imageType', 'language', 'packageName'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.edits.images.upload
*
* @desc Uploads a new image and adds it to the list of images for the specified language and image type.
*
* @alias androidpublisher.edits.images.upload
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {string} params.editId Unique identifier for this edit.
* @param {string} params.imageType
* @param {string} params.language The language code (a BCP-47 language tag) of the localized listing whose images are to read or modified. For example, to select Austrian German, pass "de-AT".
* @param {string} params.packageName Unique identifier for the Android app that is being updated; for example, "com.spiffygame".
* @param {object} params.media Media object
* @param {string} params.media.mimeType Media mime-type
* @param {string|object} params.media.body Media body contents
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
upload: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/edits/{editId}/listings/{language}/{imageType}',
method: 'POST'
}, options),
params: params,
mediaUrl: 'https://www.googleapis.com/upload/androidpublisher/v2/applications/{packageName}/edits/{editId}/listings/{language}/{imageType}',
requiredParams: ['packageName', 'editId', 'language', 'imageType'],
pathParams: ['editId', 'imageType', 'language', 'packageName'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
listings: {
/**
* androidpublisher.edits.listings.delete
*
* @desc Deletes the specified localized store listing from an edit.
*
* @alias androidpublisher.edits.listings.delete
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {string} params.editId Unique identifier for this edit.
* @param {string} params.language The language code (a BCP-47 language tag) of the localized listing to read or modify. For example, to select Austrian German, pass "de-AT".
* @param {string} params.packageName Unique identifier for the Android app that is being updated; for example, "com.spiffygame".
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/edits/{editId}/listings/{language}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['packageName', 'editId', 'language'],
pathParams: ['editId', 'language', 'packageName'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.edits.listings.deleteall
*
* @desc Deletes all localized listings from an edit.
*
* @alias androidpublisher.edits.listings.deleteall
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {string} params.editId Unique identifier for this edit.
* @param {string} params.packageName Unique identifier for the Android app that is being updated; for example, "com.spiffygame".
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
deleteall: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/edits/{editId}/listings',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['packageName', 'editId'],
pathParams: ['editId', 'packageName'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.edits.listings.get
*
* @desc Fetches information about a localized store listing.
*
* @alias androidpublisher.edits.listings.get
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {string} params.editId Unique identifier for this edit.
* @param {string} params.language The language code (a BCP-47 language tag) of the localized listing to read or modify. For example, to select Austrian German, pass "de-AT".
* @param {string} params.packageName Unique identifier for the Android app that is being updated; for example, "com.spiffygame".
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/edits/{editId}/listings/{language}',
method: 'GET'
}, options),
params: params,
requiredParams: ['packageName', 'editId', 'language'],
pathParams: ['editId', 'language', 'packageName'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.edits.listings.list
*
* @desc Returns all of the localized store listings attached to this edit.
*
* @alias androidpublisher.edits.listings.list
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {string} params.editId Unique identifier for this edit.
* @param {string} params.packageName Unique identifier for the Android app that is being updated; for example, "com.spiffygame".
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/edits/{editId}/listings',
method: 'GET'
}, options),
params: params,
requiredParams: ['packageName', 'editId'],
pathParams: ['editId', 'packageName'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.edits.listings.patch
*
* @desc Creates or updates a localized store listing. This method supports patch semantics.
*
* @alias androidpublisher.edits.listings.patch
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {string} params.editId Unique identifier for this edit.
* @param {string} params.language The language code (a BCP-47 language tag) of the localized listing to read or modify. For example, to select Austrian German, pass "de-AT".
* @param {string} params.packageName Unique identifier for the Android app that is being updated; for example, "com.spiffygame".
* @param {androidpublisher(v2).Listing} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/edits/{editId}/listings/{language}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['packageName', 'editId', 'language'],
pathParams: ['editId', 'language', 'packageName'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.edits.listings.update
*
* @desc Creates or updates a localized store listing.
*
* @alias androidpublisher.edits.listings.update
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {string} params.editId Unique identifier for this edit.
* @param {string} params.language The language code (a BCP-47 language tag) of the localized listing to read or modify. For example, to select Austrian German, pass "de-AT".
* @param {string} params.packageName Unique identifier for the Android app that is being updated; for example, "com.spiffygame".
* @param {androidpublisher(v2).Listing} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/edits/{editId}/listings/{language}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['packageName', 'editId', 'language'],
pathParams: ['editId', 'language', 'packageName'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
testers: {
/**
* androidpublisher.edits.testers.get
*
*
*
* @alias androidpublisher.edits.testers.get
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {string} params.editId Unique identifier for this edit.
* @param {string} params.packageName Unique identifier for the Android app that is being updated; for example, "com.spiffygame".
* @param {string} params.track
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/edits/{editId}/testers/{track}',
method: 'GET'
}, options),
params: params,
requiredParams: ['packageName', 'editId', 'track'],
pathParams: ['editId', 'packageName', 'track'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.edits.testers.patch
*
*
*
* @alias androidpublisher.edits.testers.patch
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {string} params.editId Unique identifier for this edit.
* @param {string} params.packageName Unique identifier for the Android app that is being updated; for example, "com.spiffygame".
* @param {string} params.track
* @param {androidpublisher(v2).Testers} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/edits/{editId}/testers/{track}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['packageName', 'editId', 'track'],
pathParams: ['editId', 'packageName', 'track'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.edits.testers.update
*
*
*
* @alias androidpublisher.edits.testers.update
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {string} params.editId Unique identifier for this edit.
* @param {string} params.packageName Unique identifier for the Android app that is being updated; for example, "com.spiffygame".
* @param {string} params.track
* @param {androidpublisher(v2).Testers} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/edits/{editId}/testers/{track}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['packageName', 'editId', 'track'],
pathParams: ['editId', 'packageName', 'track'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
tracks: {
/**
* androidpublisher.edits.tracks.get
*
* @desc Fetches the track configuration for the specified track type. Includes the APK version codes that are in this track.
*
* @alias androidpublisher.edits.tracks.get
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {string} params.editId Unique identifier for this edit.
* @param {string} params.packageName Unique identifier for the Android app that is being updated; for example, "com.spiffygame".
* @param {string} params.track The track type to read or modify.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/edits/{editId}/tracks/{track}',
method: 'GET'
}, options),
params: params,
requiredParams: ['packageName', 'editId', 'track'],
pathParams: ['editId', 'packageName', 'track'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.edits.tracks.list
*
* @desc Lists all the track configurations for this edit.
*
* @alias androidpublisher.edits.tracks.list
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {string} params.editId Unique identifier for this edit.
* @param {string} params.packageName Unique identifier for the Android app that is being updated; for example, "com.spiffygame".
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/edits/{editId}/tracks',
method: 'GET'
}, options),
params: params,
requiredParams: ['packageName', 'editId'],
pathParams: ['editId', 'packageName'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.edits.tracks.patch
*
* @desc Updates the track configuration for the specified track type. When halted, the rollout track cannot be updated without adding new APKs, and adding new APKs will cause it to resume. This method supports patch semantics.
*
* @alias androidpublisher.edits.tracks.patch
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {string} params.editId Unique identifier for this edit.
* @param {string} params.packageName Unique identifier for the Android app that is being updated; for example, "com.spiffygame".
* @param {string} params.track The track type to read or modify.
* @param {androidpublisher(v2).Track} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/edits/{editId}/tracks/{track}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['packageName', 'editId', 'track'],
pathParams: ['editId', 'packageName', 'track'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.edits.tracks.update
*
* @desc Updates the track configuration for the specified track type. When halted, the rollout track cannot be updated without adding new APKs, and adding new APKs will cause it to resume.
*
* @alias androidpublisher.edits.tracks.update
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {string} params.editId Unique identifier for this edit.
* @param {string} params.packageName Unique identifier for the Android app that is being updated; for example, "com.spiffygame".
* @param {string} params.track The track type to read or modify.
* @param {androidpublisher(v2).Track} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/edits/{editId}/tracks/{track}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['packageName', 'editId', 'track'],
pathParams: ['editId', 'packageName', 'track'],
context: self
};
return createAPIRequest(parameters, callback);
}
}
};
self.entitlements = {
/**
* androidpublisher.entitlements.list
*
* @desc Lists the user's current inapp item or subscription entitlements
*
* @alias androidpublisher.entitlements.list
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {integer=} params.maxResults
* @param {string} params.packageName The package name of the application the inapp product was sold in (for example, 'com.some.thing').
* @param {string=} params.productId The product id of the inapp product (for example, 'sku1'). This can be used to restrict the result set.
* @param {integer=} params.startIndex
* @param {string=} params.token
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/entitlements',
method: 'GET'
}, options),
params: params,
requiredParams: ['packageName'],
pathParams: ['packageName'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.inappproducts = {
/**
* androidpublisher.inappproducts.batch
*
*
*
* @alias androidpublisher.inappproducts.batch
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {androidpublisher(v2).InappproductsBatchRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
batch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/inappproducts/batch',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.inappproducts.delete
*
* @desc Delete an in-app product for an app.
*
* @alias androidpublisher.inappproducts.delete
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {string} params.packageName Unique identifier for the Android app with the in-app product; for example, "com.spiffygame".
* @param {string} params.sku Unique identifier for the in-app product.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/inappproducts/{sku}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['packageName', 'sku'],
pathParams: ['packageName', 'sku'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.inappproducts.get
*
* @desc Returns information about the in-app product specified.
*
* @alias androidpublisher.inappproducts.get
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {string} params.packageName
* @param {string} params.sku Unique identifier for the in-app product.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/inappproducts/{sku}',
method: 'GET'
}, options),
params: params,
requiredParams: ['packageName', 'sku'],
pathParams: ['packageName', 'sku'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.inappproducts.insert
*
* @desc Creates a new in-app product for an app.
*
* @alias androidpublisher.inappproducts.insert
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {boolean=} params.autoConvertMissingPrices If true the prices for all regions targeted by the parent app that don't have a price specified for this in-app product will be auto converted to the target currency based on the default price. Defaults to false.
* @param {string} params.packageName Unique identifier for the Android app; for example, "com.spiffygame".
* @param {androidpublisher(v2).InAppProduct} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/inappproducts',
method: 'POST'
}, options),
params: params,
requiredParams: ['packageName'],
pathParams: ['packageName'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.inappproducts.list
*
* @desc List all the in-app products for an Android app, both subscriptions and managed in-app products..
*
* @alias androidpublisher.inappproducts.list
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {integer=} params.maxResults
* @param {string} params.packageName Unique identifier for the Android app with in-app products; for example, "com.spiffygame".
* @param {integer=} params.startIndex
* @param {string=} params.token
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/inappproducts',
method: 'GET'
}, options),
params: params,
requiredParams: ['packageName'],
pathParams: ['packageName'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.inappproducts.patch
*
* @desc Updates the details of an in-app product. This method supports patch semantics.
*
* @alias androidpublisher.inappproducts.patch
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {boolean=} params.autoConvertMissingPrices If true the prices for all regions targeted by the parent app that don't have a price specified for this in-app product will be auto converted to the target currency based on the default price. Defaults to false.
* @param {string} params.packageName Unique identifier for the Android app with the in-app product; for example, "com.spiffygame".
* @param {string} params.sku Unique identifier for the in-app product.
* @param {androidpublisher(v2).InAppProduct} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/inappproducts/{sku}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['packageName', 'sku'],
pathParams: ['packageName', 'sku'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.inappproducts.update
*
* @desc Updates the details of an in-app product.
*
* @alias androidpublisher.inappproducts.update
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {boolean=} params.autoConvertMissingPrices If true the prices for all regions targeted by the parent app that don't have a price specified for this in-app product will be auto converted to the target currency based on the default price. Defaults to false.
* @param {string} params.packageName Unique identifier for the Android app with the in-app product; for example, "com.spiffygame".
* @param {string} params.sku Unique identifier for the in-app product.
* @param {androidpublisher(v2).InAppProduct} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/inappproducts/{sku}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['packageName', 'sku'],
pathParams: ['packageName', 'sku'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.purchases = {
products: {
/**
* androidpublisher.purchases.products.get
*
* @desc Checks the purchase and consumption status of an inapp item.
*
* @alias androidpublisher.purchases.products.get
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {string} params.packageName The package name of the application the inapp product was sold in (for example, 'com.some.thing').
* @param {string} params.productId The inapp product SKU (for example, 'com.some.thing.inapp1').
* @param {string} params.token The token provided to the user's device when the inapp product was purchased.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/purchases/products/{productId}/tokens/{token}',
method: 'GET'
}, options),
params: params,
requiredParams: ['packageName', 'productId', 'token'],
pathParams: ['packageName', 'productId', 'token'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
subscriptions: {
/**
* androidpublisher.purchases.subscriptions.cancel
*
* @desc Cancels a user's subscription purchase. The subscription remains valid until its expiration time.
*
* @alias androidpublisher.purchases.subscriptions.cancel
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {string} params.packageName The package name of the application for which this subscription was purchased (for example, 'com.some.thing').
* @param {string} params.subscriptionId The purchased subscription ID (for example, 'monthly001').
* @param {string} params.token The token provided to the user's device when the subscription was purchased.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
cancel: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:cancel',
method: 'POST'
}, options),
params: params,
requiredParams: ['packageName', 'subscriptionId', 'token'],
pathParams: ['packageName', 'subscriptionId', 'token'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.purchases.subscriptions.defer
*
* @desc Defers a user's subscription purchase until a specified future expiration time.
*
* @alias androidpublisher.purchases.subscriptions.defer
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {string} params.packageName The package name of the application for which this subscription was purchased (for example, 'com.some.thing').
* @param {string} params.subscriptionId The purchased subscription ID (for example, 'monthly001').
* @param {string} params.token The token provided to the user's device when the subscription was purchased.
* @param {androidpublisher(v2).SubscriptionPurchasesDeferRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
defer: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:defer',
method: 'POST'
}, options),
params: params,
requiredParams: ['packageName', 'subscriptionId', 'token'],
pathParams: ['packageName', 'subscriptionId', 'token'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.purchases.subscriptions.get
*
* @desc Checks whether a user's subscription purchase is valid and returns its expiry time.
*
* @alias androidpublisher.purchases.subscriptions.get
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {string} params.packageName The package name of the application for which this subscription was purchased (for example, 'com.some.thing').
* @param {string} params.subscriptionId The purchased subscription ID (for example, 'monthly001').
* @param {string} params.token The token provided to the user's device when the subscription was purchased.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}',
method: 'GET'
}, options),
params: params,
requiredParams: ['packageName', 'subscriptionId', 'token'],
pathParams: ['packageName', 'subscriptionId', 'token'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.purchases.subscriptions.refund
*
* @desc Refunds a user's subscription purchase, but the subscription remains valid until its expiration time and it will continue to recur.
*
* @alias androidpublisher.purchases.subscriptions.refund
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {string} params.packageName The package name of the application for which this subscription was purchased (for example, 'com.some.thing').
* @param {string} params.subscriptionId The purchased subscription ID (for example, 'monthly001').
* @param {string} params.token The token provided to the user's device when the subscription was purchased.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
refund: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:refund',
method: 'POST'
}, options),
params: params,
requiredParams: ['packageName', 'subscriptionId', 'token'],
pathParams: ['packageName', 'subscriptionId', 'token'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.purchases.subscriptions.revoke
*
* @desc Refunds and immediately revokes a user's subscription purchase. Access to the subscription will be terminated immediately and it will stop recurring.
*
* @alias androidpublisher.purchases.subscriptions.revoke
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {string} params.packageName The package name of the application for which this subscription was purchased (for example, 'com.some.thing').
* @param {string} params.subscriptionId The purchased subscription ID (for example, 'monthly001').
* @param {string} params.token The token provided to the user's device when the subscription was purchased.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
revoke: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:revoke',
method: 'POST'
}, options),
params: params,
requiredParams: ['packageName', 'subscriptionId', 'token'],
pathParams: ['packageName', 'subscriptionId', 'token'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
voidedpurchases: {
/**
* androidpublisher.purchases.voidedpurchases.list
*
* @desc Lists the purchases that were cancelled, refunded or charged-back.
*
* @alias androidpublisher.purchases.voidedpurchases.list
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {string=} params.endTime The time, in milliseconds since the Epoch, of the newest voided in-app product purchase that you want to see in the response. The value of this parameter cannot be greater than the current time and is ignored if a pagination token is set. Default value is current time.
* @param {integer=} params.maxResults
* @param {string} params.packageName The package name of the application for which voided purchases need to be returned (for example, 'com.some.thing').
* @param {integer=} params.startIndex
* @param {string=} params.startTime The time, in milliseconds since the Epoch, of the oldest voided in-app product purchase that you want to see in the response. The value of this parameter cannot be older than 30 days and is ignored if a pagination token is set. Default value is current time minus 30 days.
* @param {string=} params.token
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/purchases/voidedpurchases',
method: 'GET'
}, options),
params: params,
requiredParams: ['packageName'],
pathParams: ['packageName'],
context: self
};
return createAPIRequest(parameters, callback);
}
}
};
self.reviews = {
/**
* androidpublisher.reviews.get
*
* @desc Returns a single review.
*
* @alias androidpublisher.reviews.get
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {string} params.packageName Unique identifier for the Android app for which we want reviews; for example, "com.spiffygame".
* @param {string} params.reviewId
* @param {string=} params.translationLanguage
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/reviews/{reviewId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['packageName', 'reviewId'],
pathParams: ['packageName', 'reviewId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.reviews.list
*
* @desc Returns a list of reviews. Only reviews from last week will be returned.
*
* @alias androidpublisher.reviews.list
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {integer=} params.maxResults
* @param {string} params.packageName Unique identifier for the Android app for which we want reviews; for example, "com.spiffygame".
* @param {integer=} params.startIndex
* @param {string=} params.token
* @param {string=} params.translationLanguage
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/reviews',
method: 'GET'
}, options),
params: params,
requiredParams: ['packageName'],
pathParams: ['packageName'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* androidpublisher.reviews.reply
*
* @desc Reply to a single review, or update an existing reply.
*
* @alias androidpublisher.reviews.reply
* @memberOf! androidpublisher(v2)
*
* @param {object} params Parameters for request
* @param {string} params.packageName Unique identifier for the Android app for which we want reviews; for example, "com.spiffygame".
* @param {string} params.reviewId
* @param {androidpublisher(v2).ReviewsReplyRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
reply: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/reviews/{reviewId}:reply',
method: 'POST'
}, options),
params: params,
requiredParams: ['packageName', 'reviewId'],
pathParams: ['packageName', 'reviewId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
}
/**
* @typedef Apk
* @memberOf! androidpublisher(v2)
* @type object
* @property {androidpublisher(v2).ApkBinary} binary Information about the binary payload of this APK.
* @property {integer} versionCode The version code of the APK, as specified in the APK's manifest file.
*/
/**
* @typedef ApkBinary
* @memberOf! androidpublisher(v2)
* @type object
* @property {string} sha1 A sha1 hash of the APK payload, encoded as a hex string and matching the output of the sha1sum command.
*/
/**
* @typedef ApkListing
* @memberOf! androidpublisher(v2)
* @type object
* @property {string} language The language code, in BCP 47 format (eg "en-US").
* @property {string} recentChanges Describe what's new in your APK.
*/
/**
* @typedef ApkListingsListResponse
* @memberOf! androidpublisher(v2)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "androidpublisher#apkListingsListResponse".
* @property {androidpublisher(v2).ApkListing[]} listings
*/
/**
* @typedef ApksAddExternallyHostedRequest
* @memberOf! androidpublisher(v2)
* @type object
* @property {androidpublisher(v2).ExternallyHostedApk} externallyHostedApk The definition of the externally-hosted APK and where it is located.
*/
/**
* @typedef ApksAddExternallyHostedResponse
* @memberOf! androidpublisher(v2)
* @type object
* @property {androidpublisher(v2).ExternallyHostedApk} externallyHostedApk The definition of the externally-hosted APK and where it is located.
*/
/**
* @typedef ApksListResponse
* @memberOf! androidpublisher(v2)
* @type object
* @property {androidpublisher(v2).Apk[]} apks
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "androidpublisher#apksListResponse".
*/
/**
* @typedef AppDetails
* @memberOf! androidpublisher(v2)
* @type object
* @property {string} contactEmail The user-visible support email for this app.
* @property {string} contactPhone The user-visible support telephone number for this app.
* @property {string} contactWebsite The user-visible website for this app.
* @property {string} defaultLanguage Default language code, in BCP 47 format (eg "en-US").
*/
/**
* @typedef AppEdit
* @memberOf! androidpublisher(v2)
* @type object
* @property {string} expiryTimeSeconds The time at which the edit will expire and will be no longer valid for use in any subsequent API calls (encoded as seconds since the Epoch).
* @property {string} id The ID of the edit that can be used in subsequent API calls.
*/
/**
* @typedef Comment
* @memberOf! androidpublisher(v2)
* @type object
* @property {androidpublisher(v2).DeveloperComment} developerComment A comment from a developer.
* @property {androidpublisher(v2).UserComment} userComment A comment from a user.
*/
/**
* @typedef DeobfuscationFile
* @memberOf! androidpublisher(v2)
* @type object
* @property {string} symbolType The type of the deobfuscation file.
*/
/**
* @typedef DeobfuscationFilesUploadResponse
* @memberOf! androidpublisher(v2)
* @type object
* @property {androidpublisher(v2).DeobfuscationFile} deobfuscationFile
*/
/**
* @typedef DeveloperComment
* @memberOf! androidpublisher(v2)
* @type object
* @property {androidpublisher(v2).Timestamp} lastModified The last time at which this comment was updated.
* @property {string} text The content of the comment, i.e. reply body.
*/
/**
* @typedef DeviceMetadata
* @memberOf! androidpublisher(v2)
* @type object
* @property {string} cpuMake Device CPU make e.g. "Qualcomm"
* @property {string} cpuModel Device CPU model e.g. "MSM8974"
* @property {string} deviceClass Device class (e.g. tablet)
* @property {integer} glEsVersion OpenGL version
* @property {string} manufacturer Device manufacturer (e.g. Motorola)
* @property {string} nativePlatform Comma separated list of native platforms (e.g. "arm", "arm7")
* @property {string} productName Device model name (e.g. Droid)
* @property {integer} ramMb Device RAM in Megabytes e.g. "2048"
* @property {integer} screenDensityDpi Screen density in DPI
* @property {integer} screenHeightPx Screen height in pixels
* @property {integer} screenWidthPx Screen width in pixels
*/
/**
* @typedef Entitlement
* @memberOf! androidpublisher(v2)
* @type object
* @property {string} kind This kind represents an entitlement object in the androidpublisher service.
* @property {string} productId The SKU of the product.
* @property {string} productType The type of the inapp product. Possible values are:
- In-app item: "inapp"
- Subscription: "subs"
* @property {string} token The token which can be verified using the subscriptions or products API.
*/
/**
* @typedef EntitlementsListResponse
* @memberOf! androidpublisher(v2)
* @type object
* @property {androidpublisher(v2).PageInfo} pageInfo
* @property {androidpublisher(v2).Entitlement[]} resources
* @property {androidpublisher(v2).TokenPagination} tokenPagination
*/
/**
* @typedef ExpansionFile
* @memberOf! androidpublisher(v2)
* @type object
* @property {string} fileSize If set this field indicates that this APK has an Expansion File uploaded to it: this APK does not reference another APK's Expansion File. The field's value is the size of the uploaded Expansion File in bytes.
* @property {integer} referencesVersion If set this APK's Expansion File references another APK's Expansion File. The file_size field will not be set.
*/
/**
* @typedef ExpansionFilesUploadResponse
* @memberOf! androidpublisher(v2)
* @type object
* @property {androidpublisher(v2).ExpansionFile} expansionFile
*/
/**
* @typedef ExternallyHostedApk
* @memberOf! androidpublisher(v2)
* @type object
* @property {string} applicationLabel The application label.
* @property {string[]} certificateBase64s A certificate (or array of certificates if a certificate-chain is used) used to signed this APK, represented as a base64 encoded byte array.
* @property {string} externallyHostedUrl The URL at which the APK is hosted. This must be an https URL.
* @property {string} fileSha1Base64 The SHA1 checksum of this APK, represented as a base64 encoded byte array.
* @property {string} fileSha256Base64 The SHA256 checksum of this APK, represented as a base64 encoded byte array.
* @property {string} fileSize The file size in bytes of this APK.
* @property {string} iconBase64 The icon image from the APK, as a base64 encoded byte array.
* @property {integer} maximumSdk The maximum SDK supported by this APK (optional).
* @property {integer} minimumSdk The minimum SDK targeted by this APK.
* @property {string[]} nativeCodes The native code environments supported by this APK (optional).
* @property {string} packageName The package name.
* @property {string[]} usesFeatures The features required by this APK (optional).
* @property {androidpublisher(v2).ExternallyHostedApkUsesPermission[]} usesPermissions The permissions requested by this APK.
* @property {integer} versionCode The version code of this APK.
* @property {string} versionName The version name of this APK.
*/
/**
* @typedef ExternallyHostedApkUsesPermission
* @memberOf! androidpublisher(v2)
* @type object
* @property {integer} maxSdkVersion Optionally, the maximum SDK version for which the permission is required.
* @property {string} name The name of the permission requested.
*/
/**
* @typedef Image
* @memberOf! androidpublisher(v2)
* @type object
* @property {string} id A unique id representing this image.
* @property {string} sha1 A sha1 hash of the image that was uploaded.
* @property {string} url A URL that will serve a preview of the image.
*/
/**
* @typedef ImagesDeleteAllResponse
* @memberOf! androidpublisher(v2)
* @type object
* @property {androidpublisher(v2).Image[]} deleted
*/
/**
* @typedef ImagesListResponse
* @memberOf! androidpublisher(v2)
* @type object
* @property {androidpublisher(v2).Image[]} images
*/
/**
* @typedef ImagesUploadResponse
* @memberOf! androidpublisher(v2)
* @type object
* @property {androidpublisher(v2).Image} image
*/
/**
* @typedef InAppProduct
* @memberOf! androidpublisher(v2)
* @type object
* @property {string} defaultLanguage The default language of the localized data, as defined by BCP 47. e.g. "en-US", "en-GB".
* @property {androidpublisher(v2).Price} defaultPrice Default price cannot be zero. In-app products can never be free. Default price is always in the developer's Checkout merchant currency.
* @property {object} listings List of localized title and description data.
* @property {string} packageName The package name of the parent app.
* @property {object} prices Prices per buyer region. None of these prices should be zero. In-app products can never be free.
* @property {string} purchaseType Purchase type enum value. Unmodifiable after creation.
* @property {androidpublisher(v2).Season} season Definition of a season for a seasonal subscription. Can be defined only for yearly subscriptions.
* @property {string} sku The stock-keeping-unit (SKU) of the product, unique within an app.
* @property {string} status
* @property {string} subscriptionPeriod Subscription period, specified in ISO 8601 format. Acceptable values are "P1W" (one week), "P1M" (one month), "P3M" (three months), "P6M" (six months), and "P1Y" (one year).
* @property {string} trialPeriod Trial period, specified in ISO 8601 format. Acceptable values are anything between "P7D" (seven days) and "P999D" (999 days). Seasonal subscriptions cannot have a trial period.
*/
/**
* @typedef InAppProductListing
* @memberOf! androidpublisher(v2)
* @type object
* @property {string} description
* @property {string} title
*/
/**
* @typedef InappproductsBatchRequest
* @memberOf! androidpublisher(v2)
* @type object
* @property {androidpublisher(v2).InappproductsBatchRequestEntry[]} entrys
*/
/**
* @typedef InappproductsBatchRequestEntry
* @memberOf! androidpublisher(v2)
* @type object
* @property {integer} batchId
* @property {androidpublisher(v2).InappproductsInsertRequest} inappproductsinsertrequest
* @property {androidpublisher(v2).InappproductsUpdateRequest} inappproductsupdaterequest
* @property {string} methodName
*/
/**
* @typedef InappproductsBatchResponse
* @memberOf! androidpublisher(v2)
* @type object
* @property {androidpublisher(v2).InappproductsBatchResponseEntry[]} entrys
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "androidpublisher#inappproductsBatchResponse".
*/
/**
* @typedef InappproductsBatchResponseEntry
* @memberOf! androidpublisher(v2)
* @type object
* @property {integer} batchId
* @property {androidpublisher(v2).InappproductsInsertResponse} inappproductsinsertresponse
* @property {androidpublisher(v2).InappproductsUpdateResponse} inappproductsupdateresponse
*/
/**
* @typedef InappproductsInsertRequest
* @memberOf! androidpublisher(v2)
* @type object
* @property {androidpublisher(v2).InAppProduct} inappproduct
*/
/**
* @typedef InappproductsInsertResponse
* @memberOf! androidpublisher(v2)
* @type object
* @property {androidpublisher(v2).InAppProduct} inappproduct
*/
/**
* @typedef InappproductsListResponse
* @memberOf! androidpublisher(v2)
* @type object
* @property {androidpublisher(v2).InAppProduct[]} inappproduct
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "androidpublisher#inappproductsListResponse".
* @property {androidpublisher(v2).PageInfo} pageInfo
* @property {androidpublisher(v2).TokenPagination} tokenPagination
*/
/**
* @typedef InappproductsUpdateRequest
* @memberOf! androidpublisher(v2)
* @type object
* @property {androidpublisher(v2).InAppProduct} inappproduct
*/
/**
* @typedef InappproductsUpdateResponse
* @memberOf! androidpublisher(v2)
* @type object
* @property {androidpublisher(v2).InAppProduct} inappproduct
*/
/**
* @typedef Listing
* @memberOf! androidpublisher(v2)
* @type object
* @property {string} fullDescription Full description of the app; this may be up to 4000 characters in length.
* @property {string} language Language localization code (for example, "de-AT" for Austrian German).
* @property {string} shortDescription Short description of the app (previously known as promo text); this may be up to 80 characters in length.
* @property {string} title App's localized title.
* @property {string} video URL of a promotional YouTube video for the app.
*/
/**
* @typedef ListingsListResponse
* @memberOf! androidpublisher(v2)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "androidpublisher#listingsListResponse".
* @property {androidpublisher(v2).Listing[]} listings
*/
/**
* @typedef MonthDay
* @memberOf! androidpublisher(v2)
* @type object
* @property {integer} day Day of a month, value in [1, 31] range. Valid range depends on the specified month.
* @property {integer} month Month of a year. e.g. 1 = JAN, 2 = FEB etc.
*/
/**
* @typedef PageInfo
* @memberOf! androidpublisher(v2)
* @type object
* @property {integer} resultPerPage
* @property {integer} startIndex
* @property {integer} totalResults
*/
/**
* @typedef Price
* @memberOf! androidpublisher(v2)
* @type object
* @property {string} currency 3 letter Currency code, as defined by ISO 4217.
* @property {string} priceMicros The price in millionths of the currency base unit represented as a string.
*/
/**
* @typedef ProductPurchase
* @memberOf! androidpublisher(v2)
* @type object
* @property {integer} consumptionState The consumption state of the inapp product. Possible values are:
- Yet to be consumed
- Consumed
* @property {string} developerPayload A developer-specified string that contains supplemental information about an order.
* @property {string} kind This kind represents an inappPurchase object in the androidpublisher service.
* @property {integer} purchaseState The purchase state of the order. Possible values are:
- Purchased
- Cancelled
* @property {string} purchaseTimeMillis The time the product was purchased, in milliseconds since the epoch (Jan 1, 1970).
*/
/**
* @typedef Prorate
* @memberOf! androidpublisher(v2)
* @type object
* @property {androidpublisher(v2).Price} defaultPrice Default price cannot be zero and must be less than the full subscription price. Default price is always in the developer's Checkout merchant currency. Targeted countries have their prices set automatically based on the default_price.
* @property {androidpublisher(v2).MonthDay} start Defines the first day on which the price takes effect.
*/
/**
* @typedef Review
* @memberOf! androidpublisher(v2)
* @type object
* @property {string} authorName The name of the user who wrote the review.
* @property {androidpublisher(v2).Comment[]} comments A repeated field containing comments for the review.
* @property {string} reviewId Unique identifier for this review.
*/
/**
* @typedef ReviewReplyResult
* @memberOf! androidpublisher(v2)
* @type object
* @property {androidpublisher(v2).Timestamp} lastEdited The time at which the reply took effect.
* @property {string} replyText The reply text that was applied.
*/
/**
* @typedef ReviewsListResponse
* @memberOf! androidpublisher(v2)
* @type object
* @property {androidpublisher(v2).PageInfo} pageInfo
* @property {androidpublisher(v2).Review[]} reviews
* @property {androidpublisher(v2).TokenPagination} tokenPagination
*/
/**
* @typedef ReviewsReplyRequest
* @memberOf! androidpublisher(v2)
* @type object
* @property {string} replyText The text to set as the reply. Replies of more than approximately 350 characters will be rejected. HTML tags will be stripped.
*/
/**
* @typedef ReviewsReplyResponse
* @memberOf! androidpublisher(v2)
* @type object
* @property {androidpublisher(v2).ReviewReplyResult} result
*/
/**
* @typedef Season
* @memberOf! androidpublisher(v2)
* @type object
* @property {androidpublisher(v2).MonthDay} end Inclusive end date of the recurrence period.
* @property {androidpublisher(v2).Prorate[]} prorations Optionally present list of prorations for the season. Each proration is a one-off discounted entry into a subscription. Each proration contains the first date on which the discount is available and the new pricing information.
* @property {androidpublisher(v2).MonthDay} start Inclusive start date of the recurrence period.
*/
/**
* @typedef SubscriptionDeferralInfo
* @memberOf! androidpublisher(v2)
* @type object
* @property {string} desiredExpiryTimeMillis The desired next expiry time to assign to the subscription, in milliseconds since the Epoch. The given time must be later/greater than the current expiry time for the subscription.
* @property {string} expectedExpiryTimeMillis The expected expiry time for the subscription. If the current expiry time for the subscription is not the value specified here, the deferral will not occur.
*/
/**
* @typedef SubscriptionPurchase
* @memberOf! androidpublisher(v2)
* @type object
* @property {boolean} autoRenewing Whether the subscription will automatically be renewed when it reaches its current expiry time.
* @property {integer} cancelReason The reason why a subscription was cancelled or is not auto-renewing. Possible values are:
- User cancelled the subscription
- Subscription was cancelled by the system, for example because of a billing problem
* @property {string} countryCode ISO 3166-1 alpha-2 billing country/region code of the user at the time the subscription was granted.
* @property {string} developerPayload A developer-specified string that contains supplemental information about an order.
* @property {string} expiryTimeMillis Time at which the subscription will expire, in milliseconds since the Epoch.
* @property {string} kind This kind represents a subscriptionPurchase object in the androidpublisher service.
* @property {integer} paymentState The payment state of the subscription. Possible values are:
- Payment pending
- Payment received
* @property {string} priceAmountMicros Price of the subscription, not including tax. Price is expressed in micro-units, where 1,000,000 micro-units represents one unit of the currency. For example, if the subscription price is €1.99, price_amount_micros is 1990000.
* @property {string} priceCurrencyCode ISO 4217 currency code for the subscription price. For example, if the price is specified in British pounds sterling, price_currency_code is "GBP".
* @property {string} startTimeMillis Time at which the subscription was granted, in milliseconds since the Epoch.
* @property {string} userCancellationTimeMillis The time at which the subscription was canceled by the user, in milliseconds since the epoch. Only present if cancelReason is 0.
*/
/**
* @typedef SubscriptionPurchasesDeferRequest
* @memberOf! androidpublisher(v2)
* @type object
* @property {androidpublisher(v2).SubscriptionDeferralInfo} deferralInfo The information about the new desired expiry time for the subscription.
*/
/**
* @typedef SubscriptionPurchasesDeferResponse
* @memberOf! androidpublisher(v2)
* @type object
* @property {string} newExpiryTimeMillis The new expiry time for the subscription in milliseconds since the Epoch.
*/
/**
* @typedef Testers
* @memberOf! androidpublisher(v2)
* @type object
* @property {string[]} googleGroups
* @property {string[]} googlePlusCommunities
*/
/**
* @typedef Timestamp
* @memberOf! androidpublisher(v2)
* @type object
* @property {integer} nanos
* @property {string} seconds
*/
/**
* @typedef TokenPagination
* @memberOf! androidpublisher(v2)
* @type object
* @property {string} nextPageToken
* @property {string} previousPageToken
*/
/**
* @typedef Track
* @memberOf! androidpublisher(v2)
* @type object
* @property {string} track
* @property {number} userFraction
* @property {integer[]} versionCodes
*/
/**
* @typedef TracksListResponse
* @memberOf! androidpublisher(v2)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "androidpublisher#tracksListResponse".
* @property {androidpublisher(v2).Track[]} tracks
*/
/**
* @typedef UserComment
* @memberOf! androidpublisher(v2)
* @type object
* @property {integer} androidOsVersion Integer Android SDK version of the user's device at the time the review was written, e.g. 23 is Marshmallow. May be absent.
* @property {integer} appVersionCode Integer version code of the app as installed at the time the review was written. May be absent.
* @property {string} appVersionName String version name of the app as installed at the time the review was written. May be absent.
* @property {string} device Codename for the reviewer's device, e.g. klte, flounder. May be absent.
* @property {androidpublisher(v2).DeviceMetadata} deviceMetadata Some information about the characteristics of the user's device
* @property {androidpublisher(v2).Timestamp} lastModified The last time at which this comment was updated.
* @property {string} originalText Untranslated text of the review, in the case where the review has been translated. If the review has not been translated this is left blank.
* @property {string} reviewerLanguage Language code for the reviewer. This is taken from the device settings so is not guaranteed to match the language the review is written in. May be absent.
* @property {integer} starRating The star rating associated with the review, from 1 to 5.
* @property {string} text The content of the comment, i.e. review body. In some cases users have been able to write a review with separate title and body; in those cases the title and body are concatenated and separated by a tab character.
* @property {integer} thumbsDownCount Number of users who have given this review a thumbs down
* @property {integer} thumbsUpCount Number of users who have given this review a thumbs up
*/
/**
* @typedef VoidedPurchase
* @memberOf! androidpublisher(v2)
* @type object
* @property {string} kind This kind represents a voided purchase object in the androidpublisher service.
* @property {string} purchaseTimeMillis The time at which the purchase was made, in milliseconds since the epoch (Jan 1, 1970).
* @property {string} purchaseToken The token that was generated when a purchase was made. This uniquely identifies a purchase.
* @property {string} voidedTimeMillis The time at which the purchase was cancelled/refunded/charged-back, in milliseconds since the epoch (Jan 1, 1970).
*/
/**
* @typedef VoidedPurchasesListResponse
* @memberOf! androidpublisher(v2)
* @type object
* @property {androidpublisher(v2).PageInfo} pageInfo
* @property {androidpublisher(v2).TokenPagination} tokenPagination
* @property {androidpublisher(v2).VoidedPurchase[]} voidedPurchases
*/
module.exports = Androidpublisher;
|
| File | Statements | Branches | Functions | Lines | |||||
|---|---|---|---|---|---|---|---|---|---|
| v1alpha.js | 12.9% | (4 / 31) | 0% | (0 / 18) | 0% | (0 / 5) | 12.9% | (4 / 31) | |
| v1beta.js | 2.01% | (4 / 199) | 0% | (0 / 130) | 0% | (0 / 33) | 2.01% | (4 / 199) | |
| v1beta4.js | 3.15% | (4 / 127) | 0% | (0 / 82) | 0% | (0 / 21) | 3.15% | (4 / 127) | |
| v1beta5.js | 3.15% | (4 / 127) | 0% | (0 / 82) | 0% | (0 / 21) | 3.15% | (4 / 127) |
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* Google App Engine Admin API
*
* The App Engine Admin API enables developers to provision and manage their App Engine applications.
*
* @example
* var google = require('googleapis');
* var appengine = google.appengine('v1alpha');
*
* @namespace appengine
* @type {Function}
* @version v1alpha
* @variation v1alpha
* @param {object=} options Options for Appengine
*/
function Appengine(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.apps = {
operations: {
/**
* appengine.apps.operations.list
*
* @desc Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns UNIMPLEMENTED.NOTE: the name binding below allows API services to override the binding to use different resource name schemes, such as users/x/operations.
*
* @alias appengine.apps.operations.list
* @memberOf! appengine(v1alpha)
*
* @param {object} params Parameters for request
* @param {string=} params.filter The standard list filter.
* @param {string} params.appsId Part of `name`. The name of the operation collection.
* @param {string=} params.pageToken The standard list page token.
* @param {integer=} params.pageSize The standard list page size.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1alpha/apps/{appsId}/operations',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId'],
pathParams: ['appsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.operations.get
*
* @desc Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.
*
* @alias appengine.apps.operations.get
* @memberOf! appengine(v1alpha)
*
* @param {object} params Parameters for request
* @param {string} params.appsId Part of `name`. The name of the operation resource.
* @param {string} params.operationsId Part of `name`. See documentation of `appsId`.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1alpha/apps/{appsId}/operations/{operationsId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId', 'operationsId'],
pathParams: ['appsId', 'operationsId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
locations: {
/**
* appengine.apps.locations.list
*
* @desc Lists information about the supported locations for this service.
*
* @alias appengine.apps.locations.list
* @memberOf! appengine(v1alpha)
*
* @param {object} params Parameters for request
* @param {string=} params.filter The standard list filter.
* @param {string} params.appsId Part of `name`. The resource that owns the locations collection, if applicable.
* @param {string=} params.pageToken The standard list page token.
* @param {integer=} params.pageSize The standard list page size.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1alpha/apps/{appsId}/locations',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId'],
pathParams: ['appsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.locations.get
*
* @desc Get information about a location.
*
* @alias appengine.apps.locations.get
* @memberOf! appengine(v1alpha)
*
* @param {object} params Parameters for request
* @param {string} params.appsId Part of `name`. Resource name for the location.
* @param {string} params.locationsId Part of `name`. See documentation of `appsId`.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1alpha/apps/{appsId}/locations/{locationsId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId', 'locationsId'],
pathParams: ['appsId', 'locationsId'],
context: self
};
return createAPIRequest(parameters, callback);
}
}
};
}
/**
* @typedef OperationMetadataV1
* @memberOf! appengine(v1alpha)
* @type object
* @property {string} insertTime Time that this operation was created.@OutputOnly
* @property {string[]} warning Durable messages that persist on every operation poll. @OutputOnly
* @property {string} user User who requested this operation.@OutputOnly
* @property {string} target Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly
* @property {string} ephemeralMessage Ephemeral message that may change every time the operation is polled. @OutputOnly
* @property {string} method API method that initiated this operation. Example: google.appengine.v1.Versions.CreateVersion.@OutputOnly
* @property {string} endTime Time that this operation completed.@OutputOnly
*/
/**
* @typedef Operation
* @memberOf! appengine(v1alpha)
* @type object
* @property {boolean} done If the value is false, it means the operation is still in progress. If true, the operation is completed, and either error or response is available.
* @property {object} response The normal response of the operation in case of success. If the original method returns no data on success, such as Delete, the response is google.protobuf.Empty. If the original method is standard Get/Create/Update, the response should be the resource. For other methods, the response should have the type XxxResponse, where Xxx is the original method name. For example, if the original method name is TakeSnapshot(), the inferred response type is TakeSnapshotResponse.
* @property {string} name The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should have the format of operations/some/unique/name.
* @property {appengine(v1alpha).Status} error The error result of the operation in case of failure or cancellation.
* @property {object} metadata Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
*/
/**
* @typedef ListOperationsResponse
* @memberOf! appengine(v1alpha)
* @type object
* @property {string} nextPageToken The standard List next-page token.
* @property {appengine(v1alpha).Operation[]} operations A list of operations that matches the specified filter in the request.
*/
/**
* @typedef OperationMetadata
* @memberOf! appengine(v1alpha)
* @type object
* @property {string} method API method that initiated this operation. Example: google.appengine.v1beta4.Version.CreateVersion.@OutputOnly
* @property {string} endTime Timestamp that this operation completed.@OutputOnly
* @property {string} operationType Type of this operation. Deprecated, use method field instead. Example: "create_version".@OutputOnly
* @property {string} insertTime Timestamp that this operation was created.@OutputOnly
* @property {string} target Name of the resource that this operation is acting on. Example: apps/myapp/modules/default.@OutputOnly
* @property {string} user User who requested this operation.@OutputOnly
*/
/**
* @typedef OperationMetadataExperimental
* @memberOf! appengine(v1alpha)
* @type object
* @property {string} user User who requested this operation.@OutputOnly
* @property {string} target Name of the resource that this operation is acting on. Example: apps/myapp/customDomains/example.com.@OutputOnly
* @property {string} method API method that initiated this operation. Example: google.appengine.experimental.CustomDomains.CreateCustomDomain.@OutputOnly
* @property {string} insertTime Time that this operation was created.@OutputOnly
* @property {string} endTime Time that this operation completed.@OutputOnly
*/
/**
* @typedef OperationMetadataV1Beta5
* @memberOf! appengine(v1alpha)
* @type object
* @property {string} insertTime Timestamp that this operation was created.@OutputOnly
* @property {string} endTime Timestamp that this operation completed.@OutputOnly
* @property {string} user User who requested this operation.@OutputOnly
* @property {string} target Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly
* @property {string} method API method name that initiated this operation. Example: google.appengine.v1beta5.Version.CreateVersion.@OutputOnly
*/
/**
* @typedef Status
* @memberOf! appengine(v1alpha)
* @type object
* @property {string} message A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
* @property {object[]} details A list of messages that carry the error details. There will be a common set of message types for APIs to use.
* @property {integer} code The status code, which should be an enum value of google.rpc.Code.
*/
/**
* @typedef LocationMetadata
* @memberOf! appengine(v1alpha)
* @type object
* @property {boolean} flexibleEnvironmentAvailable App Engine Flexible Environment is available in the given location.@OutputOnly
* @property {boolean} standardEnvironmentAvailable App Engine Standard Environment is available in the given location.@OutputOnly
*/
/**
* @typedef ListLocationsResponse
* @memberOf! appengine(v1alpha)
* @type object
* @property {appengine(v1alpha).Location[]} locations A list of locations that matches the specified filter in the request.
* @property {string} nextPageToken The standard List next-page token.
*/
/**
* @typedef OperationMetadataV1Beta
* @memberOf! appengine(v1alpha)
* @type object
* @property {string} method API method that initiated this operation. Example: google.appengine.v1beta.Versions.CreateVersion.@OutputOnly
* @property {string} endTime Time that this operation completed.@OutputOnly
* @property {string} insertTime Time that this operation was created.@OutputOnly
* @property {string[]} warning Durable messages that persist on every operation poll. @OutputOnly
* @property {string} user User who requested this operation.@OutputOnly
* @property {string} target Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly
* @property {string} ephemeralMessage Ephemeral message that may change every time the operation is polled. @OutputOnly
*/
/**
* @typedef Location
* @memberOf! appengine(v1alpha)
* @type object
* @property {string} locationId The canonical id for this location. For example: "us-east1".
* @property {object} metadata Service-specific metadata. For example the available capacity at the given location.
* @property {object} labels Cross-service attributes for the location. For example
{"cloud.googleapis.com/region": "us-east1"}
* @property {string} name Resource name for the location, which may vary between implementations. For example: "projects/example-project/locations/us-east1"
*/
module.exports = Appengine;
|
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 1791 1792 1793 1794 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* Google App Engine Admin API
*
* The App Engine Admin API enables developers to provision and manage their App Engine applications.
*
* @example
* var google = require('googleapis');
* var appengine = google.appengine('v1beta');
*
* @namespace appengine
* @type {Function}
* @version v1beta
* @variation v1beta
* @param {object=} options Options for Appengine
*/
function Appengine(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.apps = {
/**
* appengine.apps.repair
*
* @desc Recreates the required App Engine features for the specified App Engine application, for example a Cloud Storage bucket or App Engine service account. Use this method if you receive an error message about a missing feature, for example, Error retrieving the App Engine service account.
*
* @alias appengine.apps.repair
* @memberOf! appengine(v1beta)
*
* @param {object} params Parameters for request
* @param {string} params.appsId Part of `name`. Name of the application to repair. Example: apps/myapp
* @param {appengine(v1beta).RepairApplicationRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
repair: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta/apps/{appsId}:repair',
method: 'POST'
}, options),
params: params,
requiredParams: ['appsId'],
pathParams: ['appsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.get
*
* @desc Gets information about an application.
*
* @alias appengine.apps.get
* @memberOf! appengine(v1beta)
*
* @param {object} params Parameters for request
* @param {string} params.appsId Part of `name`. Name of the Application resource to get. Example: apps/myapp.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta/apps/{appsId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId'],
pathParams: ['appsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.patch
*
* @desc Updates the specified Application resource. You can update the following fields: auth_domain - Google authentication domain for controlling user access to the application. default_cookie_expiration - Cookie expiration policy for the application.
*
* @alias appengine.apps.patch
* @memberOf! appengine(v1beta)
*
* @param {object} params Parameters for request
* @param {string=} params.updateMask Standard field mask for the set of fields to be updated.
* @param {string} params.appsId Part of `name`. Name of the Application resource to update. Example: apps/myapp.
* @param {appengine(v1beta).Application} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta/apps/{appsId}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['appsId'],
pathParams: ['appsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.create
*
* @desc Creates an App Engine application for a Google Cloud Platform project. Required fields: id - The ID of the target Cloud Platform project. location - The region (https://cloud.google.com/appengine/docs/locations) where you want the App Engine application located.For more information about App Engine applications, see Managing Projects, Applications, and Billing (https://cloud.google.com/appengine/docs/python/console/).
*
* @alias appengine.apps.create
* @memberOf! appengine(v1beta)
*
* @param {object} params Parameters for request
* @param {appengine(v1beta).Application} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
create: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta/apps',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
authorizedDomains: {
/**
* appengine.apps.authorizedDomains.list
*
* @desc Lists all domains the user is authorized to administer.
*
* @alias appengine.apps.authorizedDomains.list
* @memberOf! appengine(v1beta)
*
* @param {object} params Parameters for request
* @param {string} params.appsId Part of `parent`. Name of the parent Application resource. Example: apps/myapp.
* @param {string=} params.pageToken Continuation token for fetching the next page of results.
* @param {integer=} params.pageSize Maximum results to return per page.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta/apps/{appsId}/authorizedDomains',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId'],
pathParams: ['appsId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
operations: {
/**
* appengine.apps.operations.list
*
* @desc Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns UNIMPLEMENTED.NOTE: the name binding below allows API services to override the binding to use different resource name schemes, such as users/x/operations.
*
* @alias appengine.apps.operations.list
* @memberOf! appengine(v1beta)
*
* @param {object} params Parameters for request
* @param {string=} params.filter The standard list filter.
* @param {string} params.appsId Part of `name`. The name of the operation collection.
* @param {string=} params.pageToken The standard list page token.
* @param {integer=} params.pageSize The standard list page size.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta/apps/{appsId}/operations',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId'],
pathParams: ['appsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.operations.get
*
* @desc Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.
*
* @alias appengine.apps.operations.get
* @memberOf! appengine(v1beta)
*
* @param {object} params Parameters for request
* @param {string} params.operationsId Part of `name`. See documentation of `appsId`.
* @param {string} params.appsId Part of `name`. The name of the operation resource.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta/apps/{appsId}/operations/{operationsId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId', 'operationsId'],
pathParams: ['operationsId', 'appsId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
domainMappings: {
/**
* appengine.apps.domainMappings.create
*
* @desc Maps a domain to an application. A user must be authorized to administer a domain in order to map it to an application. For a list of available authorized domains, see AuthorizedDomains.ListAuthorizedDomains.
*
* @alias appengine.apps.domainMappings.create
* @memberOf! appengine(v1beta)
*
* @param {object} params Parameters for request
* @param {string} params.appsId Part of `parent`. Name of the parent Application resource. Example: apps/myapp.
* @param {appengine(v1beta).DomainMapping} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
create: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta/apps/{appsId}/domainMappings',
method: 'POST'
}, options),
params: params,
requiredParams: ['appsId'],
pathParams: ['appsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.domainMappings.delete
*
* @desc Deletes the specified domain mapping. A user must be authorized to administer the associated domain in order to delete a DomainMapping resource.
*
* @alias appengine.apps.domainMappings.delete
* @memberOf! appengine(v1beta)
*
* @param {object} params Parameters for request
* @param {string} params.appsId Part of `name`. Name of the resource to delete. Example: apps/myapp/domainMappings/example.com.
* @param {string} params.domainMappingsId Part of `name`. See documentation of `appsId`.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta/apps/{appsId}/domainMappings/{domainMappingsId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['appsId', 'domainMappingsId'],
pathParams: ['appsId', 'domainMappingsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.domainMappings.list
*
* @desc Lists the domain mappings on an application.
*
* @alias appengine.apps.domainMappings.list
* @memberOf! appengine(v1beta)
*
* @param {object} params Parameters for request
* @param {string} params.appsId Part of `parent`. Name of the parent Application resource. Example: apps/myapp.
* @param {string=} params.pageToken Continuation token for fetching the next page of results.
* @param {integer=} params.pageSize Maximum results to return per page.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta/apps/{appsId}/domainMappings',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId'],
pathParams: ['appsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.domainMappings.get
*
* @desc Gets the specified domain mapping.
*
* @alias appengine.apps.domainMappings.get
* @memberOf! appengine(v1beta)
*
* @param {object} params Parameters for request
* @param {string} params.domainMappingsId Part of `name`. See documentation of `appsId`.
* @param {string} params.appsId Part of `name`. Name of the resource requested. Example: apps/myapp/domainMappings/example.com.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta/apps/{appsId}/domainMappings/{domainMappingsId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId', 'domainMappingsId'],
pathParams: ['domainMappingsId', 'appsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.domainMappings.patch
*
* @desc Updates the specified domain mapping. To map an SSL certificate to a domain mapping, update certificate_id to point to an AuthorizedCertificate resource. A user must be authorized to administer the associated domain in order to update a DomainMapping resource.
*
* @alias appengine.apps.domainMappings.patch
* @memberOf! appengine(v1beta)
*
* @param {object} params Parameters for request
* @param {string} params.appsId Part of `name`. Name of the resource to update. Example: apps/myapp/domainMappings/example.com.
* @param {string} params.domainMappingsId Part of `name`. See documentation of `appsId`.
* @param {string=} params.updateMask Standard field mask for the set of fields to be updated.
* @param {appengine(v1beta).DomainMapping} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta/apps/{appsId}/domainMappings/{domainMappingsId}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['appsId', 'domainMappingsId'],
pathParams: ['appsId', 'domainMappingsId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
locations: {
/**
* appengine.apps.locations.list
*
* @desc Lists information about the supported locations for this service.
*
* @alias appengine.apps.locations.list
* @memberOf! appengine(v1beta)
*
* @param {object} params Parameters for request
* @param {integer=} params.pageSize The standard list page size.
* @param {string=} params.filter The standard list filter.
* @param {string} params.appsId Part of `name`. The resource that owns the locations collection, if applicable.
* @param {string=} params.pageToken The standard list page token.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta/apps/{appsId}/locations',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId'],
pathParams: ['appsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.locations.get
*
* @desc Get information about a location.
*
* @alias appengine.apps.locations.get
* @memberOf! appengine(v1beta)
*
* @param {object} params Parameters for request
* @param {string} params.locationsId Part of `name`. See documentation of `appsId`.
* @param {string} params.appsId Part of `name`. Resource name for the location.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta/apps/{appsId}/locations/{locationsId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId', 'locationsId'],
pathParams: ['locationsId', 'appsId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
authorizedCertificates: {
/**
* appengine.apps.authorizedCertificates.delete
*
* @desc Deletes the specified SSL certificate.
*
* @alias appengine.apps.authorizedCertificates.delete
* @memberOf! appengine(v1beta)
*
* @param {object} params Parameters for request
* @param {string} params.authorizedCertificatesId Part of `name`. See documentation of `appsId`.
* @param {string} params.appsId Part of `name`. Name of the resource to delete. Example: apps/myapp/authorizedCertificates/12345.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['appsId', 'authorizedCertificatesId'],
pathParams: ['authorizedCertificatesId', 'appsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.authorizedCertificates.list
*
* @desc Lists all SSL certificates the user is authorized to administer.
*
* @alias appengine.apps.authorizedCertificates.list
* @memberOf! appengine(v1beta)
*
* @param {object} params Parameters for request
* @param {string} params.appsId Part of `parent`. Name of the parent Application resource. Example: apps/myapp.
* @param {string=} params.pageToken Continuation token for fetching the next page of results.
* @param {integer=} params.pageSize Maximum results to return per page.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta/apps/{appsId}/authorizedCertificates',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId'],
pathParams: ['appsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.authorizedCertificates.get
*
* @desc Gets the specified SSL certificate.
*
* @alias appengine.apps.authorizedCertificates.get
* @memberOf! appengine(v1beta)
*
* @param {object} params Parameters for request
* @param {string} params.appsId Part of `name`. Name of the resource requested. Example: apps/myapp/authorizedCertificates/12345.
* @param {string=} params.view Controls the set of fields returned in the GET response.
* @param {string} params.authorizedCertificatesId Part of `name`. See documentation of `appsId`.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId', 'authorizedCertificatesId'],
pathParams: ['appsId', 'authorizedCertificatesId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.authorizedCertificates.patch
*
* @desc Updates the specified SSL certificate. To renew a certificate and maintain its existing domain mappings, update certificate_data with a new certificate. The new certificate must be applicable to the same domains as the original certificate. The certificate display_name may also be updated.
*
* @alias appengine.apps.authorizedCertificates.patch
* @memberOf! appengine(v1beta)
*
* @param {object} params Parameters for request
* @param {string=} params.updateMask Standard field mask for the set of fields to be updated. Updates are only supported on the certificate_raw_data and display_name fields.
* @param {string} params.appsId Part of `name`. Name of the resource to update. Example: apps/myapp/authorizedCertificates/12345.
* @param {string} params.authorizedCertificatesId Part of `name`. See documentation of `appsId`.
* @param {appengine(v1beta).AuthorizedCertificate} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['appsId', 'authorizedCertificatesId'],
pathParams: ['appsId', 'authorizedCertificatesId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.authorizedCertificates.create
*
* @desc Uploads the specified SSL certificate.
*
* @alias appengine.apps.authorizedCertificates.create
* @memberOf! appengine(v1beta)
*
* @param {object} params Parameters for request
* @param {string} params.appsId Part of `parent`. Name of the parent Application resource. Example: apps/myapp.
* @param {appengine(v1beta).AuthorizedCertificate} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
create: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta/apps/{appsId}/authorizedCertificates',
method: 'POST'
}, options),
params: params,
requiredParams: ['appsId'],
pathParams: ['appsId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
services: {
/**
* appengine.apps.services.delete
*
* @desc Deletes the specified service and all enclosed versions.
*
* @alias appengine.apps.services.delete
* @memberOf! appengine(v1beta)
*
* @param {object} params Parameters for request
* @param {string} params.servicesId Part of `name`. See documentation of `appsId`.
* @param {string} params.appsId Part of `name`. Name of the resource requested. Example: apps/myapp/services/default.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta/apps/{appsId}/services/{servicesId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['appsId', 'servicesId'],
pathParams: ['servicesId', 'appsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.services.list
*
* @desc Lists all the services in the application.
*
* @alias appengine.apps.services.list
* @memberOf! appengine(v1beta)
*
* @param {object} params Parameters for request
* @param {string} params.appsId Part of `parent`. Name of the parent Application resource. Example: apps/myapp.
* @param {string=} params.pageToken Continuation token for fetching the next page of results.
* @param {integer=} params.pageSize Maximum results to return per page.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta/apps/{appsId}/services',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId'],
pathParams: ['appsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.services.get
*
* @desc Gets the current configuration of the specified service.
*
* @alias appengine.apps.services.get
* @memberOf! appengine(v1beta)
*
* @param {object} params Parameters for request
* @param {string} params.servicesId Part of `name`. See documentation of `appsId`.
* @param {string} params.appsId Part of `name`. Name of the resource requested. Example: apps/myapp/services/default.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta/apps/{appsId}/services/{servicesId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId', 'servicesId'],
pathParams: ['servicesId', 'appsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.services.patch
*
* @desc Updates the configuration of the specified service.
*
* @alias appengine.apps.services.patch
* @memberOf! appengine(v1beta)
*
* @param {object} params Parameters for request
* @param {string=} params.updateMask Standard field mask for the set of fields to be updated.
* @param {string} params.servicesId Part of `name`. See documentation of `appsId`.
* @param {string} params.appsId Part of `name`. Name of the resource to update. Example: apps/myapp/services/default.
* @param {boolean=} params.migrateTraffic Set to true to gradually shift traffic to one or more versions that you specify. By default, traffic is shifted immediately. For gradual traffic migration, the target versions must be located within instances that are configured for both warmup requests (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#inboundservicetype) and automatic scaling (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#automaticscaling). You must specify the shardBy (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services#shardby) field in the Service resource. Gradual traffic migration is not supported in the App Engine flexible environment. For examples, see Migrating and Splitting Traffic (https://cloud.google.com/appengine/docs/admin-api/migrating-splitting-traffic).
* @param {appengine(v1beta).Service} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta/apps/{appsId}/services/{servicesId}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['appsId', 'servicesId'],
pathParams: ['servicesId', 'appsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
versions: {
/**
* appengine.apps.services.versions.delete
*
* @desc Deletes an existing Version resource.
*
* @alias appengine.apps.services.versions.delete
* @memberOf! appengine(v1beta)
*
* @param {object} params Parameters for request
* @param {string} params.versionsId Part of `name`. See documentation of `appsId`.
* @param {string} params.servicesId Part of `name`. See documentation of `appsId`.
* @param {string} params.appsId Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['appsId', 'servicesId', 'versionsId'],
pathParams: ['versionsId', 'servicesId', 'appsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.services.versions.list
*
* @desc Lists the versions of a service.
*
* @alias appengine.apps.services.versions.list
* @memberOf! appengine(v1beta)
*
* @param {object} params Parameters for request
* @param {string} params.servicesId Part of `parent`. See documentation of `appsId`.
* @param {string} params.appsId Part of `parent`. Name of the parent Service resource. Example: apps/myapp/services/default.
* @param {string=} params.pageToken Continuation token for fetching the next page of results.
* @param {integer=} params.pageSize Maximum results to return per page.
* @param {string=} params.view Controls the set of fields returned in the List response.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta/apps/{appsId}/services/{servicesId}/versions',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId', 'servicesId'],
pathParams: ['servicesId', 'appsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.services.versions.get
*
* @desc Gets the specified Version resource. By default, only a BASIC_VIEW will be returned. Specify the FULL_VIEW parameter to get the full resource.
*
* @alias appengine.apps.services.versions.get
* @memberOf! appengine(v1beta)
*
* @param {object} params Parameters for request
* @param {string} params.servicesId Part of `name`. See documentation of `appsId`.
* @param {string} params.appsId Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1.
* @param {string} params.versionsId Part of `name`. See documentation of `appsId`.
* @param {string=} params.view Controls the set of fields returned in the Get response.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId', 'servicesId', 'versionsId'],
pathParams: ['servicesId', 'appsId', 'versionsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.services.versions.patch
*
* @desc Updates the specified Version resource. You can specify the following fields depending on the App Engine environment and type of scaling that the version resource uses: serving_status (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.serving_status): For Version resources that use basic scaling, manual scaling, or run in the App Engine flexible environment. instance_class (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.instance_class): For Version resources that run in the App Engine standard environment. automatic_scaling.min_idle_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine standard environment. automatic_scaling.max_idle_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine standard environment.
*
* @alias appengine.apps.services.versions.patch
* @memberOf! appengine(v1beta)
*
* @param {object} params Parameters for request
* @param {string} params.servicesId Part of `name`. See documentation of `appsId`.
* @param {string} params.appsId Part of `name`. Name of the resource to update. Example: apps/myapp/services/default/versions/1.
* @param {string} params.versionsId Part of `name`. See documentation of `appsId`.
* @param {string=} params.updateMask Standard field mask for the set of fields to be updated.
* @param {appengine(v1beta).Version} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['appsId', 'servicesId', 'versionsId'],
pathParams: ['servicesId', 'appsId', 'versionsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.services.versions.create
*
* @desc Deploys code and resource files to a new version.
*
* @alias appengine.apps.services.versions.create
* @memberOf! appengine(v1beta)
*
* @param {object} params Parameters for request
* @param {string} params.servicesId Part of `parent`. See documentation of `appsId`.
* @param {string} params.appsId Part of `parent`. Name of the parent resource to create this version under. Example: apps/myapp/services/default.
* @param {appengine(v1beta).Version} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
create: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta/apps/{appsId}/services/{servicesId}/versions',
method: 'POST'
}, options),
params: params,
requiredParams: ['appsId', 'servicesId'],
pathParams: ['servicesId', 'appsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
instances: {
/**
* appengine.apps.services.versions.instances.delete
*
* @desc Stops a running instance.
*
* @alias appengine.apps.services.versions.instances.delete
* @memberOf! appengine(v1beta)
*
* @param {object} params Parameters for request
* @param {string} params.servicesId Part of `name`. See documentation of `appsId`.
* @param {string} params.appsId Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1/instances/instance-1.
* @param {string} params.instancesId Part of `name`. See documentation of `appsId`.
* @param {string} params.versionsId Part of `name`. See documentation of `appsId`.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['appsId', 'servicesId', 'versionsId', 'instancesId'],
pathParams: ['servicesId', 'appsId', 'instancesId', 'versionsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.services.versions.instances.list
*
* @desc Lists the instances of a version.Tip: To aggregate details about instances over time, see the Stackdriver Monitoring API (https://cloud.google.com/monitoring/api/ref_v3/rest/v3/projects.timeSeries/list).
*
* @alias appengine.apps.services.versions.instances.list
* @memberOf! appengine(v1beta)
*
* @param {object} params Parameters for request
* @param {string} params.servicesId Part of `parent`. See documentation of `appsId`.
* @param {string} params.appsId Part of `parent`. Name of the parent Version resource. Example: apps/myapp/services/default/versions/v1.
* @param {string=} params.pageToken Continuation token for fetching the next page of results.
* @param {integer=} params.pageSize Maximum results to return per page.
* @param {string} params.versionsId Part of `parent`. See documentation of `appsId`.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId', 'servicesId', 'versionsId'],
pathParams: ['servicesId', 'appsId', 'versionsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.services.versions.instances.get
*
* @desc Gets instance information.
*
* @alias appengine.apps.services.versions.instances.get
* @memberOf! appengine(v1beta)
*
* @param {object} params Parameters for request
* @param {string} params.appsId Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1/instances/instance-1.
* @param {string} params.instancesId Part of `name`. See documentation of `appsId`.
* @param {string} params.versionsId Part of `name`. See documentation of `appsId`.
* @param {string} params.servicesId Part of `name`. See documentation of `appsId`.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId', 'servicesId', 'versionsId', 'instancesId'],
pathParams: ['appsId', 'instancesId', 'versionsId', 'servicesId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.services.versions.instances.debug
*
* @desc Enables debugging on a VM instance. This allows you to use the SSH command to connect to the virtual machine where the instance lives. While in "debug mode", the instance continues to serve live traffic. You should delete the instance when you are done debugging and then allow the system to take over and determine if another instance should be started.Only applicable for instances in App Engine flexible environment.
*
* @alias appengine.apps.services.versions.instances.debug
* @memberOf! appengine(v1beta)
*
* @param {object} params Parameters for request
* @param {string} params.appsId Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1/instances/instance-1.
* @param {string} params.instancesId Part of `name`. See documentation of `appsId`.
* @param {string} params.versionsId Part of `name`. See documentation of `appsId`.
* @param {string} params.servicesId Part of `name`. See documentation of `appsId`.
* @param {appengine(v1beta).DebugInstanceRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
debug: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}:debug',
method: 'POST'
}, options),
params: params,
requiredParams: ['appsId', 'servicesId', 'versionsId', 'instancesId'],
pathParams: ['appsId', 'instancesId', 'versionsId', 'servicesId'],
context: self
};
return createAPIRequest(parameters, callback);
}
}
}
}
};
}
/**
* @typedef FileInfo
* @memberOf! appengine(v1beta)
* @type object
* @property {string} sha1Sum The SHA1 hash of the file, in hex.
* @property {string} mimeType The MIME type of the file.Defaults to the value from Google Cloud Storage.
* @property {string} sourceUrl URL source to use to fetch this file. Must be a URL to a resource in Google Cloud Storage in the form 'http(s)://storage.googleapis.com/<bucket>/<object>'.
*/
/**
* @typedef ScriptHandler
* @memberOf! appengine(v1beta)
* @type object
* @property {string} scriptPath Path to the script from the application root directory.
*/
/**
* @typedef OperationMetadataExperimental
* @memberOf! appengine(v1beta)
* @type object
* @property {string} endTime Time that this operation completed.@OutputOnly
* @property {string} user User who requested this operation.@OutputOnly
* @property {string} target Name of the resource that this operation is acting on. Example: apps/myapp/customDomains/example.com.@OutputOnly
* @property {string} method API method that initiated this operation. Example: google.appengine.experimental.CustomDomains.CreateCustomDomain.@OutputOnly
* @property {string} insertTime Time that this operation was created.@OutputOnly
*/
/**
* @typedef AuthorizedDomain
* @memberOf! appengine(v1beta)
* @type object
* @property {string} id Fully qualified domain name of the domain authorized for use. Example: example.com.
* @property {string} name Full path to the AuthorizedDomain resource in the API. Example: apps/myapp/authorizedDomains/example.com.@OutputOnly
*/
/**
* @typedef TrafficSplit
* @memberOf! appengine(v1beta)
* @type object
* @property {string} shardBy Mechanism used to determine which version a request is sent to. The traffic selection algorithm will be stable for either type until allocations are changed.
* @property {object} allocations Mapping from version IDs within the service to fractional (0.000, 1] allocations of traffic for that version. Each version can be specified only once, but some versions in the service may not have any traffic allocation. Services that have traffic allocated cannot be deleted until either the service is deleted or their traffic allocation is removed. Allocations must sum to 1. Up to two decimal place precision is supported for IP-based splits and up to three decimal places is supported for cookie-based splits.
*/
/**
* @typedef OperationMetadataV1Beta
* @memberOf! appengine(v1beta)
* @type object
* @property {string} ephemeralMessage Ephemeral message that may change every time the operation is polled. @OutputOnly
* @property {string} method API method that initiated this operation. Example: google.appengine.v1beta.Versions.CreateVersion.@OutputOnly
* @property {string} endTime Time that this operation completed.@OutputOnly
* @property {string} insertTime Time that this operation was created.@OutputOnly
* @property {string[]} warning Durable messages that persist on every operation poll. @OutputOnly
* @property {string} user User who requested this operation.@OutputOnly
* @property {string} target Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly
*/
/**
* @typedef ListServicesResponse
* @memberOf! appengine(v1beta)
* @type object
* @property {appengine(v1beta).Service[]} services The services belonging to the requested application.
* @property {string} nextPageToken Continuation token for fetching the next page of results.
*/
/**
* @typedef Deployment
* @memberOf! appengine(v1beta)
* @type object
* @property {appengine(v1beta).ZipInfo} zip The zip file for this deployment, if this is a zip deployment.
* @property {appengine(v1beta).ContainerInfo} container The Docker image for the container that runs the version. Only applicable for instances running in the App Engine flexible environment.
* @property {object} files Manifest of the files stored in Google Cloud Storage that are included as part of this version. All files must be readable using the credentials supplied with this call.
*/
/**
* @typedef Resources
* @memberOf! appengine(v1beta)
* @type object
* @property {appengine(v1beta).Volume[]} volumes User specified volumes.
* @property {number} diskGb Disk size (GB) needed.
* @property {number} cpu Number of CPU cores needed.
* @property {number} memoryGb Memory (GB) needed.
*/
/**
* @typedef Volume
* @memberOf! appengine(v1beta)
* @type object
* @property {string} volumeType Underlying volume type, e.g. 'tmpfs'.
* @property {number} sizeGb Volume size in gigabytes.
* @property {string} name Unique name for the volume.
*/
/**
* @typedef ListInstancesResponse
* @memberOf! appengine(v1beta)
* @type object
* @property {appengine(v1beta).Instance[]} instances The instances belonging to the requested version.
* @property {string} nextPageToken Continuation token for fetching the next page of results.
*/
/**
* @typedef ListDomainMappingsResponse
* @memberOf! appengine(v1beta)
* @type object
* @property {appengine(v1beta).DomainMapping[]} domainMappings The domain mappings for the application.
* @property {string} nextPageToken Continuation token for fetching the next page of results.
*/
/**
* @typedef UrlDispatchRule
* @memberOf! appengine(v1beta)
* @type object
* @property {string} path Pathname within the host. Must start with a "/". A single "*" can be included at the end of the path.The sum of the lengths of the domain and path may not exceed 100 characters.
* @property {string} domain Domain name to match against. The wildcard "*" is supported if specified before a period: "*.".Defaults to matching all domains: "*".
* @property {string} service Resource ID of a service in this application that should serve the matched request. The service must already exist. Example: default.
*/
/**
* @typedef ListVersionsResponse
* @memberOf! appengine(v1beta)
* @type object
* @property {appengine(v1beta).Version[]} versions The versions belonging to the requested service.
* @property {string} nextPageToken Continuation token for fetching the next page of results.
*/
/**
* @typedef ListAuthorizedDomainsResponse
* @memberOf! appengine(v1beta)
* @type object
* @property {string} nextPageToken Continuation token for fetching the next page of results.
* @property {appengine(v1beta).AuthorizedDomain[]} domains The authorized domains belonging to the user.
*/
/**
* @typedef Empty
* @memberOf! appengine(v1beta)
* @type object
*/
/**
* @typedef ApiEndpointHandler
* @memberOf! appengine(v1beta)
* @type object
* @property {string} scriptPath Path to the script from the application root directory.
*/
/**
* @typedef DomainMapping
* @memberOf! appengine(v1beta)
* @type object
* @property {string} id Relative name of the domain serving the application. Example: example.com.
* @property {appengine(v1beta).ResourceRecord[]} resourceRecords The resource records required to configure this domain mapping. These records must be added to the domain's DNS configuration in order to serve the application via this domain mapping.@OutputOnly
* @property {string} name Full path to the DomainMapping resource in the API. Example: apps/myapp/domainMapping/example.com.@OutputOnly
* @property {appengine(v1beta).SslSettings} sslSettings SSL configuration for this domain. If unconfigured, this domain will not serve with SSL.
*/
/**
* @typedef ZipInfo
* @memberOf! appengine(v1beta)
* @type object
* @property {string} sourceUrl URL of the zip file to deploy from. Must be a URL to a resource in Google Cloud Storage in the form 'http(s)://storage.googleapis.com/<bucket>/<object>'.
* @property {integer} filesCount An estimate of the number of files in a zip for a zip deployment. If set, must be greater than or equal to the actual number of files. Used for optimizing performance; if not provided, deployment may be slow.
*/
/**
* @typedef AutomaticScaling
* @memberOf! appengine(v1beta)
* @type object
* @property {string} minPendingLatency Minimum amount of time a request should wait in the pending queue before starting a new instance to handle it.
* @property {integer} maxIdleInstances Maximum number of idle instances that should be maintained for this version.
* @property {appengine(v1beta).RequestUtilization} requestUtilization Target scaling by request utilization.
* @property {integer} minIdleInstances Minimum number of idle instances that should be maintained for this version. Only applicable for the default version of a service.
* @property {integer} maxTotalInstances Maximum number of instances that should be started to handle requests.
* @property {integer} minTotalInstances Minimum number of instances that should be maintained for this version.
* @property {appengine(v1beta).NetworkUtilization} networkUtilization Target scaling by network usage.
* @property {string} coolDownPeriod Amount of time that the Autoscaler (https://cloud.google.com/compute/docs/autoscaler/) should wait between changes to the number of virtual machines. Only applicable for VM runtimes.
* @property {integer} maxConcurrentRequests Number of concurrent requests an automatic scaling instance can accept before the scheduler spawns a new instance.Defaults to a runtime-specific value.
* @property {string} maxPendingLatency Maximum amount of time that a request should wait in the pending queue before starting a new instance to handle it.
* @property {appengine(v1beta).CpuUtilization} cpuUtilization Target scaling by CPU usage.
* @property {appengine(v1beta).DiskUtilization} diskUtilization Target scaling by disk usage.
*/
/**
* @typedef AuthorizedCertificate
* @memberOf! appengine(v1beta)
* @type object
* @property {integer} domainMappingsCount Aggregate count of the domain mappings with this certificate mapped. This count includes domain mappings on applications for which the user does not have VIEWER permissions.Only returned by GET requests when specifically requested by the view=FULL option.@OutputOnly
* @property {string[]} domainNames Topmost applicable domains of this certificate. This certificate applies to these domains and their subdomains. Example: example.com.@OutputOnly
* @property {string} id Relative name of the certificate. This is a unique value autogenerated on AuthorizedCertificate resource creation. Example: 12345.@OutputOnly
* @property {string} displayName The user-specified display name of the certificate. This is not guaranteed to be unique. Example: My Certificate.
* @property {appengine(v1beta).CertificateRawData} certificateRawData The SSL certificate serving the AuthorizedCertificate resource. This must be obtained independently from a certificate authority.
* @property {string[]} visibleDomainMappings The full paths to user visible Domain Mapping resources that have this certificate mapped. Example: apps/myapp/domainMappings/example.com.This may not represent the full list of mapped domain mappings if the user does not have VIEWER permissions on all of the applications that have this certificate mapped. See domain_mappings_count for a complete count.Only returned by GET requests when specifically requested by the view=FULL option.@OutputOnly
* @property {string} expireTime The time when this certificate expires. To update the renewal time on this certificate, upload an SSL certificate with a different expiration time using AuthorizedCertificates.UpdateAuthorizedCertificate.@OutputOnly
* @property {string} name Full path to the AuthorizedCertificate resource in the API. Example: apps/myapp/authorizedCertificates/12345.@OutputOnly
*/
/**
* @typedef ResourceRecord
* @memberOf! appengine(v1beta)
* @type object
* @property {string} type Resource record type. Example: AAAA.
* @property {string} rrdata Data for this record. Values vary by record type, as defined in RFC 1035 (section 5) and RFC 1034 (section 3.6.1).
* @property {string} name Relative name of the object affected by this record. Only applicable for CNAME records. Example: 'www'.
*/
/**
* @typedef Library
* @memberOf! appengine(v1beta)
* @type object
* @property {string} name Name of the library. Example: "django".
* @property {string} version Version of the library to select, or "latest".
*/
/**
* @typedef ListLocationsResponse
* @memberOf! appengine(v1beta)
* @type object
* @property {appengine(v1beta).Location[]} locations A list of locations that matches the specified filter in the request.
* @property {string} nextPageToken The standard List next-page token.
*/
/**
* @typedef ContainerInfo
* @memberOf! appengine(v1beta)
* @type object
* @property {string} image URI to the hosted container image in Google Container Registry. The URI must be fully qualified and include a tag or digest. Examples: "gcr.io/my-project/image:tag" or "gcr.io/my-project/image@digest"
*/
/**
* @typedef RequestUtilization
* @memberOf! appengine(v1beta)
* @type object
* @property {integer} targetRequestCountPerSecond Target requests per second.
* @property {integer} targetConcurrentRequests Target number of concurrent requests.
*/
/**
* @typedef UrlMap
* @memberOf! appengine(v1beta)
* @type object
* @property {string} redirectHttpResponseCode 30x code to use when performing redirects for the secure field. Defaults to 302.
* @property {string} securityLevel Security (HTTPS) enforcement for this URL.
* @property {string} authFailAction Action to take when users access resources that require authentication. Defaults to redirect.
* @property {appengine(v1beta).ScriptHandler} script Executes a script to handle the request that matches this URL pattern.
* @property {string} urlRegex URL prefix. Uses regular expression syntax, which means regexp special characters must be escaped, but should not contain groupings. All URLs that begin with this prefix are handled by this handler, using the portion of the URL after the prefix as part of the file path.
* @property {string} login Level of login required to access this resource.
* @property {appengine(v1beta).ApiEndpointHandler} apiEndpoint Uses API Endpoints to handle requests.
* @property {appengine(v1beta).StaticFilesHandler} staticFiles Returns the contents of a file, such as an image, as the response.
*/
/**
* @typedef EndpointsApiService
* @memberOf! appengine(v1beta)
* @type object
* @property {string} name Endpoints service name which is the name of the "service" resource in the Service Management API. For example "myapi.endpoints.myproject.cloud.goog"
* @property {string} configId Endpoints service configuration id as specified by the Service Management API. For example "2016-09-19r1"
*/
/**
* @typedef Operation
* @memberOf! appengine(v1beta)
* @type object
* @property {appengine(v1beta).Status} error The error result of the operation in case of failure or cancellation.
* @property {object} metadata Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
* @property {boolean} done If the value is false, it means the operation is still in progress. If true, the operation is completed, and either error or response is available.
* @property {object} response The normal response of the operation in case of success. If the original method returns no data on success, such as Delete, the response is google.protobuf.Empty. If the original method is standard Get/Create/Update, the response should be the resource. For other methods, the response should have the type XxxResponse, where Xxx is the original method name. For example, if the original method name is TakeSnapshot(), the inferred response type is TakeSnapshotResponse.
* @property {string} name The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should have the format of operations/some/unique/name.
*/
/**
* @typedef ApiConfigHandler
* @memberOf! appengine(v1beta)
* @type object
* @property {string} url URL to serve the endpoint at.
* @property {string} securityLevel Security (HTTPS) enforcement for this URL.
* @property {string} authFailAction Action to take when users access resources that require authentication. Defaults to redirect.
* @property {string} script Path to the script from the application root directory.
* @property {string} login Level of login required to access this resource. Defaults to optional.
*/
/**
* @typedef StaticFilesHandler
* @memberOf! appengine(v1beta)
* @type object
* @property {string} uploadPathRegex Regular expression that matches the file paths for all files that should be referenced by this handler.
* @property {string} path Path to the static files matched by the URL pattern, from the application root directory. The path can refer to text matched in groupings in the URL pattern.
* @property {string} mimeType MIME type used to serve all files served by this handler.Defaults to file-specific MIME types, which are derived from each file's filename extension.
* @property {boolean} requireMatchingFile Whether this handler should match the request if the file referenced by the handler does not exist.
* @property {string} expiration Time a static file served by this handler should be cached by web proxies and browsers.
* @property {boolean} applicationReadable Whether files should also be uploaded as code data. By default, files declared in static file handlers are uploaded as static data and are only served to end users; they cannot be read by the application. If enabled, uploads are charged against both your code and static data storage resource quotas.
* @property {object} httpHeaders HTTP headers to use for all responses from these URLs.
*/
/**
* @typedef BasicScaling
* @memberOf! appengine(v1beta)
* @type object
* @property {integer} maxInstances Maximum number of instances to create for this version.
* @property {string} idleTimeout Duration of time after the last request that an instance must wait before the instance is shut down.
*/
/**
* @typedef DiskUtilization
* @memberOf! appengine(v1beta)
* @type object
* @property {integer} targetReadBytesPerSecond Target bytes read per second.
* @property {integer} targetReadOpsPerSecond Target ops read per seconds.
* @property {integer} targetWriteOpsPerSecond Target ops written per second.
* @property {integer} targetWriteBytesPerSecond Target bytes written per second.
*/
/**
* @typedef CpuUtilization
* @memberOf! appengine(v1beta)
* @type object
* @property {string} aggregationWindowLength Period of time over which CPU utilization is calculated.
* @property {number} targetUtilization Target CPU utilization ratio to maintain when scaling. Must be between 0 and 1.
*/
/**
* @typedef IdentityAwareProxy
* @memberOf! appengine(v1beta)
* @type object
* @property {string} oauth2ClientId OAuth2 client ID to use for the authentication flow.
* @property {string} oauth2ClientSecretSha256 Hex-encoded SHA-256 hash of the client secret.@OutputOnly
* @property {boolean} enabled Whether the serving infrastructure will authenticate and authorize all incoming requests.If true, the oauth2_client_id and oauth2_client_secret fields must be non-empty.
* @property {string} oauth2ClientSecret OAuth2 client secret to use for the authentication flow.For security reasons, this value cannot be retrieved via the API. Instead, the SHA-256 hash of the value is returned in the oauth2_client_secret_sha256 field.@InputOnly
*/
/**
* @typedef Status
* @memberOf! appengine(v1beta)
* @type object
* @property {integer} code The status code, which should be an enum value of google.rpc.Code.
* @property {string} message A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
* @property {object[]} details A list of messages that carry the error details. There will be a common set of message types for APIs to use.
*/
/**
* @typedef ManualScaling
* @memberOf! appengine(v1beta)
* @type object
* @property {integer} instances Number of instances to assign to the service at the start. This number can later be altered by using the Modules API (https://cloud.google.com/appengine/docs/python/modules/functions) set_num_instances() function.
*/
/**
* @typedef LocationMetadata
* @memberOf! appengine(v1beta)
* @type object
* @property {boolean} flexibleEnvironmentAvailable App Engine Flexible Environment is available in the given location.@OutputOnly
* @property {boolean} standardEnvironmentAvailable App Engine Standard Environment is available in the given location.@OutputOnly
*/
/**
* @typedef Service
* @memberOf! appengine(v1beta)
* @type object
* @property {string} id Relative name of the service within the application. Example: default.@OutputOnly
* @property {string} name Full path to the Service resource in the API. Example: apps/myapp/services/default.@OutputOnly
* @property {appengine(v1beta).TrafficSplit} split Mapping that defines fractional HTTP traffic diversion to different versions within the service.
*/
/**
* @typedef ListOperationsResponse
* @memberOf! appengine(v1beta)
* @type object
* @property {string} nextPageToken The standard List next-page token.
* @property {appengine(v1beta).Operation[]} operations A list of operations that matches the specified filter in the request.
*/
/**
* @typedef OperationMetadata
* @memberOf! appengine(v1beta)
* @type object
* @property {string} target Name of the resource that this operation is acting on. Example: apps/myapp/modules/default.@OutputOnly
* @property {string} user User who requested this operation.@OutputOnly
* @property {string} method API method that initiated this operation. Example: google.appengine.v1beta4.Version.CreateVersion.@OutputOnly
* @property {string} endTime Timestamp that this operation completed.@OutputOnly
* @property {string} operationType Type of this operation. Deprecated, use method field instead. Example: "create_version".@OutputOnly
* @property {string} insertTime Timestamp that this operation was created.@OutputOnly
*/
/**
* @typedef ListAuthorizedCertificatesResponse
* @memberOf! appengine(v1beta)
* @type object
* @property {string} nextPageToken Continuation token for fetching the next page of results.
* @property {appengine(v1beta).AuthorizedCertificate[]} certificates The SSL certificates the user is authorized to administer.
*/
/**
* @typedef OperationMetadataV1
* @memberOf! appengine(v1beta)
* @type object
* @property {string} ephemeralMessage Ephemeral message that may change every time the operation is polled. @OutputOnly
* @property {string} method API method that initiated this operation. Example: google.appengine.v1.Versions.CreateVersion.@OutputOnly
* @property {string} endTime Time that this operation completed.@OutputOnly
* @property {string[]} warning Durable messages that persist on every operation poll. @OutputOnly
* @property {string} insertTime Time that this operation was created.@OutputOnly
* @property {string} user User who requested this operation.@OutputOnly
* @property {string} target Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly
*/
/**
* @typedef SslSettings
* @memberOf! appengine(v1beta)
* @type object
* @property {string} certificateId ID of the AuthorizedCertificate resource configuring SSL for the application. Clearing this field will remove SSL support. Example: 12345.
*/
/**
* @typedef ErrorHandler
* @memberOf! appengine(v1beta)
* @type object
* @property {string} errorCode Error condition this handler applies to.
* @property {string} mimeType MIME type of file. Defaults to text/html.
* @property {string} staticFile Static file content to be served for this error.
*/
/**
* @typedef Application
* @memberOf! appengine(v1beta)
* @type object
* @property {appengine(v1beta).UrlDispatchRule[]} dispatchRules HTTP path dispatch rules for requests to the application that do not explicitly target a service or version. Rules are order-dependent. Up to 20 dispatch rules can be supported.@OutputOnly
* @property {string} gcrDomain The Google Container Registry domain used for storing managed build docker images for this application.
* @property {string} name Full path to the Application resource in the API. Example: apps/myapp.@OutputOnly
* @property {string} id Identifier of the Application resource. This identifier is equivalent to the project ID of the Google Cloud Platform project where you want to deploy your application. Example: myapp.
* @property {string} defaultCookieExpiration Cookie expiration policy for this application.
* @property {string} locationId Location from which this application will be run. Application instances will run out of data centers in the chosen location, which is also where all of the application's end user content is stored.Defaults to us-central.Options are:us-central - Central USeurope-west - Western Europeus-east1 - Eastern US
* @property {string} servingStatus Serving status of this application.
* @property {string} defaultHostname Hostname used to reach this application, as resolved by App Engine.@OutputOnly
* @property {appengine(v1beta).IdentityAwareProxy} iap
* @property {string} authDomain Google Apps authentication domain that controls which users can access this application.Defaults to open access for any Google Account.
* @property {string} codeBucket Google Cloud Storage bucket that can be used for storing files associated with this application. This bucket is associated with the application and can be used by the gcloud deployment commands.@OutputOnly
* @property {string} defaultBucket Google Cloud Storage bucket that can be used by this application to store content.@OutputOnly
*/
/**
* @typedef Network
* @memberOf! appengine(v1beta)
* @type object
* @property {string[]} forwardedPorts List of ports, or port pairs, to forward from the virtual machine to the application container.
* @property {string} instanceTag Tag to apply to the VM instance during creation.
* @property {string} subnetworkName Google Cloud Platform sub-network where the virtual machines are created. Specify the short name, not the resource path.If a subnetwork name is specified, a network name will also be required unless it is for the default network.
If the network the VM instance is being created in is a Legacy network, then the IP address is allocated from the IPv4Range.
If the network the VM instance is being created in is an auto Subnet Mode Network, then only network name should be specified (not the subnetwork_name) and the IP address is created from the IPCidrRange of the subnetwork that exists in that zone for that network.
If the network the VM instance is being created in is a custom Subnet Mode Network, then the subnetwork_name must be specified and the IP address is created from the IPCidrRange of the subnetwork.If specified, the subnetwork must exist in the same region as the Flex app.
* @property {string} name Google Cloud Platform network where the virtual machines are created. Specify the short name, not the resource path.Defaults to default.
*/
/**
* @typedef Instance
* @memberOf! appengine(v1beta)
* @type object
* @property {integer} averageLatency Average latency (ms) over the last minute.@OutputOnly
* @property {string} memoryUsage Total memory in use (bytes).@OutputOnly
* @property {string} id Relative name of the instance within the version. Example: instance-1.@OutputOnly
* @property {string} vmIp The IP address of this instance. Only applicable for instances in App Engine flexible environment.@OutputOnly
* @property {string} availability Availability of the instance.@OutputOnly
* @property {string} vmStatus Status of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment.@OutputOnly
* @property {integer} errors Number of errors since this instance was started.@OutputOnly
* @property {string} startTime Time that this instance was started.@OutputOnly
* @property {boolean} vmDebugEnabled Whether this instance is in debug mode. Only applicable for instances in App Engine flexible environment.@OutputOnly
* @property {integer} requests Number of requests since this instance was started.@OutputOnly
* @property {string} appEngineRelease App Engine release this instance is running on.@OutputOnly
* @property {string} vmName Name of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment.@OutputOnly
* @property {string} vmId Virtual machine ID of this instance. Only applicable for instances in App Engine flexible environment.@OutputOnly
* @property {number} qps Average queries per second (QPS) over the last minute.@OutputOnly
* @property {string} vmZoneName Zone where the virtual machine is located. Only applicable for instances in App Engine flexible environment.@OutputOnly
* @property {string} name Full path to the Instance resource in the API. Example: apps/myapp/services/default/versions/v1/instances/instance-1.@OutputOnly
*/
/**
* @typedef LivenessCheck
* @memberOf! appengine(v1beta)
* @type object
* @property {string} checkInterval Interval between health checks.
* @property {integer} failureThreshold Number of consecutive failed checks required before considering the VM unhealthy.
* @property {string} timeout Time before the check is considered failed.
* @property {string} initialDelay The initial delay before starting to execute the checks.
* @property {string} path The request path.
* @property {string} host Host header to send when performing a HTTP Liveness check. Example: "myapp.appspot.com"
* @property {integer} successThreshold Number of consecutive successful checks required before considering the VM healthy.
*/
/**
* @typedef Location
* @memberOf! appengine(v1beta)
* @type object
* @property {string} name Resource name for the location, which may vary between implementations. For example: "projects/example-project/locations/us-east1"
* @property {string} locationId The canonical id for this location. For example: "us-east1".
* @property {object} metadata Service-specific metadata. For example the available capacity at the given location.
* @property {object} labels Cross-service attributes for the location. For example
{"cloud.googleapis.com/region": "us-east1"}
*/
/**
* @typedef NetworkUtilization
* @memberOf! appengine(v1beta)
* @type object
* @property {integer} targetSentPacketsPerSecond Target packets sent per second.
* @property {integer} targetReceivedBytesPerSecond Target bytes received per second.
* @property {integer} targetReceivedPacketsPerSecond Target packets received per second.
* @property {integer} targetSentBytesPerSecond Target bytes sent per second.
*/
/**
* @typedef HealthCheck
* @memberOf! appengine(v1beta)
* @type object
* @property {string} host Host header to send when performing an HTTP health check. Example: "myapp.appspot.com"
* @property {integer} healthyThreshold Number of consecutive successful health checks required before receiving traffic.
* @property {integer} restartThreshold Number of consecutive failed health checks required before an instance is restarted.
* @property {string} checkInterval Interval between health checks.
* @property {string} timeout Time before the health check is considered failed.
* @property {integer} unhealthyThreshold Number of consecutive failed health checks required before removing traffic.
* @property {boolean} disableHealthCheck Whether to explicitly disable health checks for this instance.
*/
/**
* @typedef ReadinessCheck
* @memberOf! appengine(v1beta)
* @type object
* @property {string} checkInterval Interval between health checks.
* @property {string} timeout Time before the check is considered failed.
* @property {integer} failureThreshold Number of consecutive failed checks required before removing traffic.
* @property {string} path The request path.
* @property {integer} successThreshold Number of consecutive successful checks required before receiving traffic.
* @property {string} host Host header to send when performing a HTTP Readiness check. Example: "myapp.appspot.com"
*/
/**
* @typedef DebugInstanceRequest
* @memberOf! appengine(v1beta)
* @type object
* @property {string} sshKey Public SSH key to add to the instance. Examples:
[USERNAME]:ssh-rsa [KEY_VALUE] [USERNAME]
[USERNAME]:ssh-rsa [KEY_VALUE] google-ssh {"userName":"[USERNAME]","expireOn":"[EXPIRE_TIME]"}For more information, see Adding and Removing SSH Keys (https://cloud.google.com/compute/docs/instances/adding-removing-ssh-keys).
*/
/**
* @typedef OperationMetadataV1Beta5
* @memberOf! appengine(v1beta)
* @type object
* @property {string} endTime Timestamp that this operation completed.@OutputOnly
* @property {string} user User who requested this operation.@OutputOnly
* @property {string} target Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly
* @property {string} method API method name that initiated this operation. Example: google.appengine.v1beta5.Version.CreateVersion.@OutputOnly
* @property {string} insertTime Timestamp that this operation was created.@OutputOnly
*/
/**
* @typedef Version
* @memberOf! appengine(v1beta)
* @type object
* @property {string} defaultExpiration Duration that static files should be cached by web proxies and browsers. Only applicable if the corresponding StaticFilesHandler (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#staticfileshandler) does not specify its own expiration time.Only returned in GET requests if view=FULL is set.
* @property {appengine(v1beta).Library[]} libraries Configuration for third-party Python runtime libraries that are required by the application.Only returned in GET requests if view=FULL is set.
* @property {string} nobuildFilesRegex Files that match this pattern will not be built into this version. Only applicable for Go runtimes.Only returned in GET requests if view=FULL is set.
* @property {appengine(v1beta).BasicScaling} basicScaling A service with basic scaling will create an instance when the application receives a request. The instance will be turned down when the app becomes idle. Basic scaling is ideal for work that is intermittent or driven by user activity.
* @property {string} runtime Desired runtime. Example: python27.
* @property {string} id Relative name of the version within the service. Example: v1. Version names can contain only lowercase letters, numbers, or hyphens. Reserved names: "default", "latest", and any name with the prefix "ah-".
* @property {string} createdBy Email address of the user who created this version.@OutputOnly
* @property {object} envVariables Environment variables available to the application.Only returned in GET requests if view=FULL is set.
* @property {appengine(v1beta).LivenessCheck} livenessCheck Configures liveness health checking for VM instances. Unhealthy instances are stopped and replaced with new instancesOnly returned in GET requests if view=FULL is set.
* @property {appengine(v1beta).Network} network Extra network settings. Only applicable for VM runtimes.
* @property {object} betaSettings Metadata settings that are supplied to this version to enable beta runtime features.
* @property {string} env App Engine execution environment for this version.Defaults to standard.
* @property {appengine(v1beta).UrlMap[]} handlers An ordered list of URL-matching patterns that should be applied to incoming requests. The first matching URL handles the request and other request handlers are not attempted.Only returned in GET requests if view=FULL is set.
* @property {appengine(v1beta).AutomaticScaling} automaticScaling Automatic scaling is based on request rate, response latencies, and other application metrics.
* @property {string} diskUsageBytes Total size in bytes of all the files that are included in this version and curerntly hosted on the App Engine disk.@OutputOnly
* @property {appengine(v1beta).HealthCheck} healthCheck Configures health checking for VM instances. Unhealthy instances are stopped and replaced with new instances. Only applicable for VM runtimes.Only returned in GET requests if view=FULL is set.
* @property {boolean} threadsafe Whether multiple requests can be dispatched to this version at once.
* @property {appengine(v1beta).ReadinessCheck} readinessCheck Configures readiness health checking for VM instances. Unhealthy instances are not put into the backend traffic rotation.Only returned in GET requests if view=FULL is set.
* @property {appengine(v1beta).ManualScaling} manualScaling A service with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time.
* @property {string} name Full path to the Version resource in the API. Example: apps/myapp/services/default/versions/v1.@OutputOnly
* @property {appengine(v1beta).ApiConfigHandler} apiConfig Serving configuration for Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/).Only returned in GET requests if view=FULL is set.
* @property {appengine(v1beta).EndpointsApiService} endpointsApiService Cloud Endpoints configuration.If endpoints_api_service is set, the Cloud Endpoints Extensible Service Proxy will be provided to serve the API implemented by the app.
* @property {boolean} vm Whether to deploy this version in a container on a virtual machine.
* @property {string} versionUrl Serving URL for this version. Example: "https://myversion-dot-myservice-dot-myapp.appspot.com"@OutputOnly
* @property {string} instanceClass Instance class that is used to run this version. Valid values are:
AutomaticScaling: F1, F2, F4, F4_1G
ManualScaling or BasicScaling: B1, B2, B4, B8, B4_1GDefaults to F1 for AutomaticScaling and B1 for ManualScaling or BasicScaling.
* @property {string} servingStatus Current serving status of this version. Only the versions with a SERVING status create instances and can be billed.SERVING_STATUS_UNSPECIFIED is an invalid value. Defaults to SERVING.
* @property {appengine(v1beta).Deployment} deployment Code and application artifacts that make up this version.Only returned in GET requests if view=FULL is set.
* @property {string} createTime Time that this version was created.@OutputOnly
* @property {string[]} inboundServices Before an application can receive email or XMPP messages, the application must be configured to enable the service.
* @property {appengine(v1beta).Resources} resources Machine resources for this version. Only applicable for VM runtimes.
* @property {appengine(v1beta).ErrorHandler[]} errorHandlers Custom static error pages. Limited to 10KB per page.Only returned in GET requests if view=FULL is set.
*/
/**
* @typedef RepairApplicationRequest
* @memberOf! appengine(v1beta)
* @type object
*/
/**
* @typedef CertificateRawData
* @memberOf! appengine(v1beta)
* @type object
* @property {string} publicCertificate PEM encoded x.509 public key certificate. This field is set once on certificate creation. Must include the header and footer. Example: <pre> -----BEGIN CERTIFICATE----- <certificate_value> -----END CERTIFICATE----- </pre>
* @property {string} privateKey Unencrypted PEM encoded RSA private key. This field is set once on certificate creation and then encrypted. The key size must be 2048 bits or fewer. Must include the header and footer. Example: <pre> -----BEGIN RSA PRIVATE KEY----- <unencrypted_key_value> -----END RSA PRIVATE KEY----- </pre> @InputOnly
*/
module.exports = Appengine;
|
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* Google App Engine Admin API
*
* The App Engine Admin API enables developers to provision and manage their App Engine applications.
*
* @example
* var google = require('googleapis');
* var appengine = google.appengine('v1beta4');
*
* @namespace appengine
* @type {Function}
* @version v1beta4
* @variation v1beta4
* @param {object=} options Options for Appengine
*/
function Appengine(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.apps = {
/**
* appengine.apps.create
*
* @desc Creates an App Engine application for a Google Cloud Platform project. Required fields: id - The ID of the target Cloud Platform project. location - The region (https://cloud.google.com/appengine/docs/locations) where you want the App Engine application located.For more information about App Engine applications, see Managing Projects, Applications, and Billing (https://cloud.google.com/appengine/docs/python/console/).
*
* @alias appengine.apps.create
* @memberOf! appengine(v1beta4)
*
* @param {object} params Parameters for request
* @param {appengine(v1beta4).Application} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
create: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta4/apps',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.get
*
* @desc Gets information about an application.
*
* @alias appengine.apps.get
* @memberOf! appengine(v1beta4)
*
* @param {object} params Parameters for request
* @param {boolean=} params.ensureResourcesExist Certain resources associated with an application are created on-demand. Controls whether these resources should be created when performing the GET operation. If specified and any resources could not be created, the request will fail with an error code. Additionally, this parameter can cause the request to take longer to complete.
* @param {string} params.appsId Part of `name`. Name of the application to get. Example: apps/myapp.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta4/apps/{appsId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId'],
pathParams: ['appsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.patch
*
* @desc Updates the specified Application resource. You can update the following fields: auth_domain (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta4/apps#Application.FIELDS.auth_domain) default_cookie_expiration (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta4/apps#Application.FIELDS.default_cookie_expiration)
*
* @alias appengine.apps.patch
* @memberOf! appengine(v1beta4)
*
* @param {object} params Parameters for request
* @param {string} params.appsId Part of `name`. Name of the Application resource to update. Example: apps/myapp.
* @param {string=} params.mask Standard field mask for the set of fields to be updated.
* @param {appengine(v1beta4).Application} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta4/apps/{appsId}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['appsId'],
pathParams: ['appsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
modules: {
/**
* appengine.apps.modules.delete
*
* @desc Deletes the specified module and all enclosed versions.
*
* @alias appengine.apps.modules.delete
* @memberOf! appengine(v1beta4)
*
* @param {object} params Parameters for request
* @param {string} params.appsId Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default.
* @param {string} params.modulesId Part of `name`. See documentation of `appsId`.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta4/apps/{appsId}/modules/{modulesId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['appsId', 'modulesId'],
pathParams: ['appsId', 'modulesId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.modules.get
*
* @desc Gets the current configuration of the specified module.
*
* @alias appengine.apps.modules.get
* @memberOf! appengine(v1beta4)
*
* @param {object} params Parameters for request
* @param {string} params.appsId Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default.
* @param {string} params.modulesId Part of `name`. See documentation of `appsId`.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta4/apps/{appsId}/modules/{modulesId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId', 'modulesId'],
pathParams: ['appsId', 'modulesId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.modules.list
*
* @desc Lists all the modules in the application.
*
* @alias appengine.apps.modules.list
* @memberOf! appengine(v1beta4)
*
* @param {object} params Parameters for request
* @param {string} params.appsId Part of `name`. Name of the resource requested. Example: apps/myapp.
* @param {string=} params.pageToken Continuation token for fetching the next page of results.
* @param {integer=} params.pageSize Maximum results to return per page.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta4/apps/{appsId}/modules',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId'],
pathParams: ['appsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.modules.patch
*
* @desc Updates the configuration of the specified module.
*
* @alias appengine.apps.modules.patch
* @memberOf! appengine(v1beta4)
*
* @param {object} params Parameters for request
* @param {string} params.modulesId Part of `name`. See documentation of `appsId`.
* @param {string=} params.mask Standard field mask for the set of fields to be updated.
* @param {string} params.appsId Part of `name`. Name of the resource to update. Example: apps/myapp/modules/default.
* @param {boolean=} params.migrateTraffic Set to true to gradually shift traffic to one or more versions that you specify. By default, traffic is shifted immediately. For gradual traffic migration, the target versions must be located within instances that are configured for both warmup requests (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta4/apps.modules.versions#inboundservicetype) and automatic scaling (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta4/apps.modules.versions#automaticscaling). You must specify the shardBy (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta4/apps.modules#shardby) field in the Module resource. Gradual traffic migration is not supported in the App Engine flexible environment. For examples, see Migrating and Splitting Traffic (https://cloud.google.com/appengine/docs/admin-api/migrating-splitting-traffic).
* @param {appengine(v1beta4).Module} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta4/apps/{appsId}/modules/{modulesId}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['appsId', 'modulesId'],
pathParams: ['modulesId', 'appsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
versions: {
/**
* appengine.apps.modules.versions.delete
*
* @desc Deletes an existing version.
*
* @alias appengine.apps.modules.versions.delete
* @memberOf! appengine(v1beta4)
*
* @param {object} params Parameters for request
* @param {string} params.modulesId Part of `name`. See documentation of `appsId`.
* @param {string} params.versionsId Part of `name`. See documentation of `appsId`.
* @param {string} params.appsId Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default/versions/v1.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['appsId', 'modulesId', 'versionsId'],
pathParams: ['modulesId', 'versionsId', 'appsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.modules.versions.get
*
* @desc Gets the specified Version resource. By default, only a BASIC_VIEW will be returned. Specify the FULL_VIEW parameter to get the full resource.
*
* @alias appengine.apps.modules.versions.get
* @memberOf! appengine(v1beta4)
*
* @param {object} params Parameters for request
* @param {string} params.modulesId Part of `name`. See documentation of `appsId`.
* @param {string} params.versionsId Part of `name`. See documentation of `appsId`.
* @param {string=} params.view Controls the set of fields returned in the Get response.
* @param {string} params.appsId Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default/versions/v1.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId', 'modulesId', 'versionsId'],
pathParams: ['modulesId', 'versionsId', 'appsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.modules.versions.list
*
* @desc Lists the versions of a module.
*
* @alias appengine.apps.modules.versions.list
* @memberOf! appengine(v1beta4)
*
* @param {object} params Parameters for request
* @param {string} params.modulesId Part of `name`. See documentation of `appsId`.
* @param {string=} params.view Controls the set of fields returned in the List response.
* @param {string} params.appsId Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default.
* @param {string=} params.pageToken Continuation token for fetching the next page of results.
* @param {integer=} params.pageSize Maximum results to return per page.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta4/apps/{appsId}/modules/{modulesId}/versions',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId', 'modulesId'],
pathParams: ['modulesId', 'appsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.modules.versions.patch
*
* @desc Updates the specified Version resource. You can specify the following fields depending on the App Engine environment and type of scaling that the version resource uses: serving_status (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta4/apps.modules.versions#Version.FIELDS.serving_status): For Version resources that use basic scaling, manual scaling, or run in the App Engine flexible environment. instance_class (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta4/apps.modules.versions#Version.FIELDS.instance_class): For Version resources that run in the App Engine standard environment. automatic_scaling.min_idle_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta4/apps.modules.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine standard environment. automatic_scaling.max_idle_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta4/apps.modules.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine standard environment.
*
* @alias appengine.apps.modules.versions.patch
* @memberOf! appengine(v1beta4)
*
* @param {object} params Parameters for request
* @param {string} params.appsId Part of `name`. Name of the resource to update. Example: apps/myapp/modules/default/versions/1.
* @param {string} params.modulesId Part of `name`. See documentation of `appsId`.
* @param {string} params.versionsId Part of `name`. See documentation of `appsId`.
* @param {string=} params.mask Standard field mask for the set of fields to be updated.
* @param {appengine(v1beta4).Version} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['appsId', 'modulesId', 'versionsId'],
pathParams: ['appsId', 'modulesId', 'versionsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.modules.versions.create
*
* @desc Deploys code and resource files to a new version.
*
* @alias appengine.apps.modules.versions.create
* @memberOf! appengine(v1beta4)
*
* @param {object} params Parameters for request
* @param {string} params.appsId Part of `name`. Name of the resource to update. Example: apps/myapp/modules/default.
* @param {string} params.modulesId Part of `name`. See documentation of `appsId`.
* @param {appengine(v1beta4).Version} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
create: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta4/apps/{appsId}/modules/{modulesId}/versions',
method: 'POST'
}, options),
params: params,
requiredParams: ['appsId', 'modulesId'],
pathParams: ['appsId', 'modulesId'],
context: self
};
return createAPIRequest(parameters, callback);
},
instances: {
/**
* appengine.apps.modules.versions.instances.get
*
* @desc Gets instance information.
*
* @alias appengine.apps.modules.versions.instances.get
* @memberOf! appengine(v1beta4)
*
* @param {object} params Parameters for request
* @param {string} params.appsId Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default/versions/v1/instances/instance-1.
* @param {string} params.instancesId Part of `name`. See documentation of `appsId`.
* @param {string} params.modulesId Part of `name`. See documentation of `appsId`.
* @param {string} params.versionsId Part of `name`. See documentation of `appsId`.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}/instances/{instancesId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId', 'modulesId', 'versionsId', 'instancesId'],
pathParams: ['appsId', 'instancesId', 'modulesId', 'versionsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.modules.versions.instances.list
*
* @desc Lists the instances of a version.Tip: To aggregate details about instances over time, see the Stackdriver Monitoring API (https://cloud.google.com/monitoring/api/ref_v3/rest/v3/projects.timeSeries/list).
*
* @alias appengine.apps.modules.versions.instances.list
* @memberOf! appengine(v1beta4)
*
* @param {object} params Parameters for request
* @param {integer=} params.pageSize Maximum results to return per page.
* @param {string} params.modulesId Part of `name`. See documentation of `appsId`.
* @param {string} params.versionsId Part of `name`. See documentation of `appsId`.
* @param {string} params.appsId Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default/versions/v1.
* @param {string=} params.pageToken Continuation token for fetching the next page of results.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}/instances',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId', 'modulesId', 'versionsId'],
pathParams: ['modulesId', 'versionsId', 'appsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.modules.versions.instances.debug
*
* @desc Enables debugging on a VM instance. This allows you to use the SSH command to connect to the virtual machine where the instance lives. While in "debug mode", the instance continues to serve live traffic. You should delete the instance when you are done debugging and then allow the system to take over and determine if another instance should be started.Only applicable for instances in App Engine flexible environment.
*
* @alias appengine.apps.modules.versions.instances.debug
* @memberOf! appengine(v1beta4)
*
* @param {object} params Parameters for request
* @param {string} params.appsId Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default/versions/v1/instances/instance-1.
* @param {string} params.instancesId Part of `name`. See documentation of `appsId`.
* @param {string} params.modulesId Part of `name`. See documentation of `appsId`.
* @param {string} params.versionsId Part of `name`. See documentation of `appsId`.
* @param {appengine(v1beta4).DebugInstanceRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
debug: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}/instances/{instancesId}:debug',
method: 'POST'
}, options),
params: params,
requiredParams: ['appsId', 'modulesId', 'versionsId', 'instancesId'],
pathParams: ['appsId', 'instancesId', 'modulesId', 'versionsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.modules.versions.instances.delete
*
* @desc Stops a running instance.
*
* @alias appengine.apps.modules.versions.instances.delete
* @memberOf! appengine(v1beta4)
*
* @param {object} params Parameters for request
* @param {string} params.appsId Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default/versions/v1/instances/instance-1.
* @param {string} params.instancesId Part of `name`. See documentation of `appsId`.
* @param {string} params.modulesId Part of `name`. See documentation of `appsId`.
* @param {string} params.versionsId Part of `name`. See documentation of `appsId`.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}/instances/{instancesId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['appsId', 'modulesId', 'versionsId', 'instancesId'],
pathParams: ['appsId', 'instancesId', 'modulesId', 'versionsId'],
context: self
};
return createAPIRequest(parameters, callback);
}
}
}
},
operations: {
/**
* appengine.apps.operations.list
*
* @desc Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns UNIMPLEMENTED.NOTE: the name binding below allows API services to override the binding to use different resource name schemes, such as users/x/operations.
*
* @alias appengine.apps.operations.list
* @memberOf! appengine(v1beta4)
*
* @param {object} params Parameters for request
* @param {string=} params.filter The standard list filter.
* @param {string} params.appsId Part of `name`. The name of the operation collection.
* @param {string=} params.pageToken The standard list page token.
* @param {integer=} params.pageSize The standard list page size.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta4/apps/{appsId}/operations',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId'],
pathParams: ['appsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.operations.get
*
* @desc Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.
*
* @alias appengine.apps.operations.get
* @memberOf! appengine(v1beta4)
*
* @param {object} params Parameters for request
* @param {string} params.appsId Part of `name`. The name of the operation resource.
* @param {string} params.operationsId Part of `name`. See documentation of `appsId`.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta4/apps/{appsId}/operations/{operationsId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId', 'operationsId'],
pathParams: ['appsId', 'operationsId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
locations: {
/**
* appengine.apps.locations.list
*
* @desc Lists information about the supported locations for this service.
*
* @alias appengine.apps.locations.list
* @memberOf! appengine(v1beta4)
*
* @param {object} params Parameters for request
* @param {string=} params.filter The standard list filter.
* @param {string} params.appsId Part of `name`. The resource that owns the locations collection, if applicable.
* @param {string=} params.pageToken The standard list page token.
* @param {integer=} params.pageSize The standard list page size.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta4/apps/{appsId}/locations',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId'],
pathParams: ['appsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.locations.get
*
* @desc Get information about a location.
*
* @alias appengine.apps.locations.get
* @memberOf! appengine(v1beta4)
*
* @param {object} params Parameters for request
* @param {string} params.locationsId Part of `name`. See documentation of `appsId`.
* @param {string} params.appsId Part of `name`. Resource name for the location.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta4/apps/{appsId}/locations/{locationsId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId', 'locationsId'],
pathParams: ['locationsId', 'appsId'],
context: self
};
return createAPIRequest(parameters, callback);
}
}
};
}
/**
* @typedef UrlMap
* @memberOf! appengine(v1beta4)
* @type object
* @property {appengine(v1beta4).StaticDirectoryHandler} staticDirectory Serves the entire contents of a directory as static files.This attribute is deprecated. You can mimic the behavior of static directories using static files.
* @property {appengine(v1beta4).StaticFilesHandler} staticFiles Returns the contents of a file, such as an image, as the response.
* @property {string} redirectHttpResponseCode 30x code to use when performing redirects for the secure field. Defaults to 302.
* @property {string} securityLevel Security (HTTPS) enforcement for this URL.
* @property {string} authFailAction Action to take when users access resources that require authentication. Defaults to redirect.
* @property {appengine(v1beta4).ScriptHandler} script Executes a script to handle the request that matches this URL pattern.
* @property {string} urlRegex A URL prefix. Uses regular expression syntax, which means regexp special characters must be escaped, but should not contain groupings. All URLs that begin with this prefix are handled by this handler, using the portion of the URL after the prefix as part of the file path.
* @property {string} login Level of login required to access this resource.
* @property {appengine(v1beta4).ApiEndpointHandler} apiEndpoint Uses API Endpoints to handle requests.
*/
/**
* @typedef Operation
* @memberOf! appengine(v1beta4)
* @type object
* @property {string} name The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should have the format of operations/some/unique/name.
* @property {appengine(v1beta4).Status} error The error result of the operation in case of failure or cancellation.
* @property {object} metadata Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
* @property {boolean} done If the value is false, it means the operation is still in progress. If true, the operation is completed, and either error or response is available.
* @property {object} response The normal response of the operation in case of success. If the original method returns no data on success, such as Delete, the response is google.protobuf.Empty. If the original method is standard Get/Create/Update, the response should be the resource. For other methods, the response should have the type XxxResponse, where Xxx is the original method name. For example, if the original method name is TakeSnapshot(), the inferred response type is TakeSnapshotResponse.
*/
/**
* @typedef ApiConfigHandler
* @memberOf! appengine(v1beta4)
* @type object
* @property {string} url URL to serve the endpoint at.
* @property {string} securityLevel Security (HTTPS) enforcement for this URL.
* @property {string} authFailAction Action to take when users access resources that require authentication. Defaults to redirect.
* @property {string} script Path to the script from the application root directory.
* @property {string} login Level of login required to access this resource. Defaults to optional.
*/
/**
* @typedef ScriptHandler
* @memberOf! appengine(v1beta4)
* @type object
* @property {string} scriptPath Path to the script from the application root directory.
*/
/**
* @typedef StaticFilesHandler
* @memberOf! appengine(v1beta4)
* @type object
* @property {boolean} applicationReadable Whether files should also be uploaded as code data. By default, files declared in static file handlers are uploaded as static data and are only served to end users; they cannot be read by the application. If enabled, uploads are charged against both your code and static data storage resource quotas.
* @property {object} httpHeaders HTTP headers to use for all responses from these URLs.
* @property {string} uploadPathRegex Regular expression that matches the file paths for all files that should be referenced by this handler.
* @property {string} path Path to the static files matched by the URL pattern, from the application root directory. The path can refer to text matched in groupings in the URL pattern.
* @property {string} mimeType MIME type used to serve all files served by this handler. Defaults to file-specific MIME types, which are derived from each file's filename extension.
* @property {boolean} requireMatchingFile Whether this handler should match the request if the file referenced by the handler does not exist.
* @property {string} expiration Time a static file served by this handler should be cached.
*/
/**
* @typedef FileInfo
* @memberOf! appengine(v1beta4)
* @type object
* @property {string} sha1Sum The SHA1 hash of the file, in hex.
* @property {string} mimeType The MIME type of the file.Defaults to the value from Google Cloud Storage.
* @property {string} sourceUrl URL source to use to fetch this file. Must be a URL to a resource in Google Cloud Storage in the form 'http(s)://storage.googleapis.com/<bucket>/<object>'.
*/
/**
* @typedef DiskUtilization
* @memberOf! appengine(v1beta4)
* @type object
* @property {integer} targetReadBytesPerSec Target bytes read per second.
* @property {integer} targetWriteOpsPerSec Target ops written per second.
* @property {integer} targetWriteBytesPerSec Target bytes written per second.
* @property {integer} targetReadOpsPerSec Target ops read per second.
*/
/**
* @typedef BasicScaling
* @memberOf! appengine(v1beta4)
* @type object
* @property {integer} maxInstances Maximum number of instances to create for this version.
* @property {string} idleTimeout Duration of time after the last request that an instance must wait before the instance is shut down.
*/
/**
* @typedef OperationMetadataExperimental
* @memberOf! appengine(v1beta4)
* @type object
* @property {string} user User who requested this operation.@OutputOnly
* @property {string} target Name of the resource that this operation is acting on. Example: apps/myapp/customDomains/example.com.@OutputOnly
* @property {string} method API method that initiated this operation. Example: google.appengine.experimental.CustomDomains.CreateCustomDomain.@OutputOnly
* @property {string} insertTime Time that this operation was created.@OutputOnly
* @property {string} endTime Time that this operation completed.@OutputOnly
*/
/**
* @typedef CpuUtilization
* @memberOf! appengine(v1beta4)
* @type object
* @property {string} aggregationWindowLength Period of time over which CPU utilization is calculated.
* @property {number} targetUtilization Target CPU utilization ratio to maintain when scaling. Must be between 0 and 1.
*/
/**
* @typedef Status
* @memberOf! appengine(v1beta4)
* @type object
* @property {object[]} details A list of messages that carry the error details. There will be a common set of message types for APIs to use.
* @property {integer} code The status code, which should be an enum value of google.rpc.Code.
* @property {string} message A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
*/
/**
* @typedef IdentityAwareProxy
* @memberOf! appengine(v1beta4)
* @type object
* @property {string} oauth2ClientSecretSha256 Hex-encoded SHA-256 hash of the client secret.@OutputOnly
* @property {boolean} enabled Whether the serving infrastructure will authenticate and authorize all incoming requests.If true, the oauth2_client_id and oauth2_client_secret fields must be non-empty.
* @property {string} oauth2ClientSecret For security reasons, this value cannot be retrieved via the API. Instead, the SHA-256 hash of the value is returned in the oauth2_client_secret_sha256 field.@InputOnly
* @property {string} oauth2ClientId OAuth2 client ID to use for the authentication flow.
*/
/**
* @typedef ManualScaling
* @memberOf! appengine(v1beta4)
* @type object
* @property {integer} instances Number of instances to assign to the module at the start. This number can later be altered by using the Modules API (https://cloud.google.com/appengine/docs/python/modules/functions) set_num_instances() function.
*/
/**
* @typedef TrafficSplit
* @memberOf! appengine(v1beta4)
* @type object
* @property {string} shardBy Mechanism used to determine which version a request is sent to. The traffic selection algorithm will be stable for either type until allocations are changed.
* @property {object} allocations Mapping from version IDs within the module to fractional (0.000, 1] allocations of traffic for that version. Each version can be specified only once, but some versions in the module may not have any traffic allocation. Modules that have traffic allocated cannot be deleted until either the module is deleted or their traffic allocation is removed. Allocations must sum to 1. Up to two decimal place precision is supported for IP-based splits and up to three decimal places is supported for cookie-based splits.
*/
/**
* @typedef LocationMetadata
* @memberOf! appengine(v1beta4)
* @type object
* @property {boolean} flexibleEnvironmentAvailable App Engine Flexible Environment is available in the given location.@OutputOnly
* @property {boolean} standardEnvironmentAvailable App Engine Standard Environment is available in the given location.@OutputOnly
*/
/**
* @typedef OperationMetadataV1Beta
* @memberOf! appengine(v1beta4)
* @type object
* @property {string[]} warning Durable messages that persist on every operation poll. @OutputOnly
* @property {string} insertTime Time that this operation was created.@OutputOnly
* @property {string} user User who requested this operation.@OutputOnly
* @property {string} target Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly
* @property {string} ephemeralMessage Ephemeral message that may change every time the operation is polled. @OutputOnly
* @property {string} method API method that initiated this operation. Example: google.appengine.v1beta.Versions.CreateVersion.@OutputOnly
* @property {string} endTime Time that this operation completed.@OutputOnly
*/
/**
* @typedef ListModulesResponse
* @memberOf! appengine(v1beta4)
* @type object
* @property {string} nextPageToken Continuation token for fetching the next page of results.
* @property {appengine(v1beta4).Module[]} modules The modules belonging to the requested application.
*/
/**
* @typedef Resources
* @memberOf! appengine(v1beta4)
* @type object
* @property {number} cpu Number of CPU cores needed.
* @property {number} memoryGb Memory (GB) needed.
* @property {appengine(v1beta4).Volume[]} volumes User specified volumes.
* @property {number} diskGb Disk size (GB) needed.
*/
/**
* @typedef Deployment
* @memberOf! appengine(v1beta4)
* @type object
* @property {appengine(v1beta4).ContainerInfo} container The Docker image for the container that runs the version. Only applicable for instances running in the App Engine flexible environment.
* @property {appengine(v1beta4).SourceReference[]} sourceReferences Origin of the source code for this deployment. There can be more than one source reference per version if source code is distributed among multiple repositories.
* @property {object} files Manifest of the files stored in Google Cloud Storage that are included as part of this version. All files must be readable using the credentials supplied with this call.
*/
/**
* @typedef Volume
* @memberOf! appengine(v1beta4)
* @type object
* @property {number} sizeGb Volume size in gigabytes.
* @property {string} name Unique name for the volume.
* @property {string} volumeType Underlying volume type, e.g. 'tmpfs'.
*/
/**
* @typedef ListOperationsResponse
* @memberOf! appengine(v1beta4)
* @type object
* @property {string} nextPageToken The standard List next-page token.
* @property {appengine(v1beta4).Operation[]} operations A list of operations that matches the specified filter in the request.
*/
/**
* @typedef OperationMetadata
* @memberOf! appengine(v1beta4)
* @type object
* @property {string} operationType Type of this operation. Deprecated, use method field instead. Example: "create_version".@OutputOnly
* @property {string} insertTime Timestamp that this operation was created.@OutputOnly
* @property {string} user User who requested this operation.@OutputOnly
* @property {string} target Name of the resource that this operation is acting on. Example: apps/myapp/modules/default.@OutputOnly
* @property {string} method API method that initiated this operation. Example: google.appengine.v1beta4.Version.CreateVersion.@OutputOnly
* @property {string} endTime Timestamp that this operation completed.@OutputOnly
*/
/**
* @typedef ListInstancesResponse
* @memberOf! appengine(v1beta4)
* @type object
* @property {appengine(v1beta4).Instance[]} instances The instances belonging to the requested version.
* @property {string} nextPageToken Continuation token for fetching the next page of results.
*/
/**
* @typedef ErrorHandler
* @memberOf! appengine(v1beta4)
* @type object
* @property {string} staticFile Static file content to be served for this error.
* @property {string} errorCode Error condition this handler applies to.
* @property {string} mimeType MIME type of file. Defaults to text/html.
*/
/**
* @typedef OperationMetadataV1
* @memberOf! appengine(v1beta4)
* @type object
* @property {string} ephemeralMessage Ephemeral message that may change every time the operation is polled. @OutputOnly
* @property {string} method API method that initiated this operation. Example: google.appengine.v1.Versions.CreateVersion.@OutputOnly
* @property {string} endTime Time that this operation completed.@OutputOnly
* @property {string} insertTime Time that this operation was created.@OutputOnly
* @property {string[]} warning Durable messages that persist on every operation poll. @OutputOnly
* @property {string} user User who requested this operation.@OutputOnly
* @property {string} target Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly
*/
/**
* @typedef Application
* @memberOf! appengine(v1beta4)
* @type object
* @property {string} id Identifier of the Application resource. This identifier is equivalent to the project ID of the Google Cloud Platform project where you want to deploy your application. Example: myapp.
* @property {string} defaultCookieExpiration Cookie expiration policy for this application.
* @property {string} codeBucket Google Cloud Storage bucket that can be used for storing files associated with this application. This bucket is associated with the application and can be used by the gcloud deployment commands.@OutputOnly
* @property {string} location Location from which this application will be run. Application instances will run out of data centers in the chosen location, which is also where all of the application's end user content is stored.Defaults to us-central.Options are:us-central - Central USeurope-west - Western Europeus-east1 - Eastern US
* @property {string} defaultBucket Google Cloud Storage bucket that can be used by this application to store content.@OutputOnly
* @property {appengine(v1beta4).UrlDispatchRule[]} dispatchRules HTTP path dispatch rules for requests to the application that do not explicitly target a module or version. Rules are order-dependent.@OutputOnly
* @property {string} defaultHostname Hostname used to reach the application, as resolved by App Engine.@OutputOnly
* @property {string} name Full path to the Application resource in the API. Example: apps/myapp.@OutputOnly
* @property {appengine(v1beta4).IdentityAwareProxy} iap
* @property {string} authDomain Google Apps authentication domain that controls which users can access this application.Defaults to open access for any Google Account.
*/
/**
* @typedef Network
* @memberOf! appengine(v1beta4)
* @type object
* @property {string[]} forwardedPorts List of ports, or port pairs, to forward from the virtual machine to the application container.
* @property {string} instanceTag Tag to apply to the VM instance during creation.
* @property {string} name Google Cloud Platform network where the virtual machines are created. Specify the short name, not the resource path.Defaults to default.
*/
/**
* @typedef Instance
* @memberOf! appengine(v1beta4)
* @type object
* @property {string} vmName Name of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment.@OutputOnly
* @property {string} vmId Virtual machine ID of this instance. Only applicable for instances in App Engine flexible environment.@OutputOnly
* @property {number} qps Average queries per second (QPS) over the last minute.@OutputOnly
* @property {string} vmZoneName Zone where the virtual machine is located. Only applicable for instances in App Engine flexible environment.@OutputOnly
* @property {boolean} vmUnlocked Whether this instance is in debug mode. Only applicable for instances in App Engine flexible environment.@OutputOnly
* @property {string} name Full path to the Instance resource in the API. Example: apps/myapp/modules/default/versions/v1/instances/instance-1.@OutputOnly
* @property {integer} averageLatency Average latency (ms) over the last minute.@OutputOnly
* @property {string} id Relative name of the instance within the version. Example: instance-1.@OutputOnly
* @property {string} memoryUsage Total memory in use (bytes).@OutputOnly
* @property {string} vmIp The IP address of this instance. Only applicable for instances in App Engine flexible environment.@OutputOnly
* @property {integer} errors Number of errors since this instance was started.@OutputOnly
* @property {string} availability Availability of the instance.@OutputOnly
* @property {string} vmStatus Status of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment.@OutputOnly
* @property {integer} requests Number of requests since this instance was started.@OutputOnly
* @property {string} appEngineRelease App Engine release this instance is running on.@OutputOnly
* @property {string} startTimestamp Time that this instance was started.@OutputOnly
*/
/**
* @typedef UrlDispatchRule
* @memberOf! appengine(v1beta4)
* @type object
* @property {string} path Pathname within the host. Must start with a "/". A single "*" can be included at the end of the path. The sum of the lengths of the domain and path may not exceed 100 characters.
* @property {string} domain Domain name to match against. The wildcard "*" is supported if specified before a period: "*.".Defaults to matching all domains: "*".
* @property {string} module Resource ID of a module in this application that should serve the matched request. The module must already exist. Example: default.
*/
/**
* @typedef ListVersionsResponse
* @memberOf! appengine(v1beta4)
* @type object
* @property {appengine(v1beta4).Version[]} versions The versions belonging to the requested module.
* @property {string} nextPageToken Continuation token for fetching the next page of results.
*/
/**
* @typedef Module
* @memberOf! appengine(v1beta4)
* @type object
* @property {string} id Relative name of the module within the application. Example: default.@OutputOnly
* @property {string} name Full path to the Module resource in the API. Example: apps/myapp/modules/default.@OutputOnly
* @property {appengine(v1beta4).TrafficSplit} split Mapping that defines fractional HTTP traffic diversion to different versions within the module.
*/
/**
* @typedef ApiEndpointHandler
* @memberOf! appengine(v1beta4)
* @type object
* @property {string} scriptPath Path to the script from the application root directory.
*/
/**
* @typedef StaticDirectoryHandler
* @memberOf! appengine(v1beta4)
* @type object
* @property {string} mimeType MIME type used to serve all files served by this handler. Defaults to file-specific MIME types, which are direved from each file's filename extension.
* @property {boolean} requireMatchingFile Whether this handler should match the request if the file referenced by the handler does not exist.
* @property {string} expiration Time a static file served by this handler should be cached.
* @property {boolean} applicationReadable Whether files should also be uploaded as code data. By default, files declared in static directory handlers are uploaded as static data and are only served to end users; they cannot be read by the application. If enabled, uploads are charged against both your code and static data storage resource quotas.
* @property {object} httpHeaders HTTP headers to use for all responses from these URLs.
* @property {string} directory Path to the directory containing the static files from the application root directory. Everything after the end of the matched URL pattern is appended to static_dir to form the full path to the requested file.
*/
/**
* @typedef AutomaticScaling
* @memberOf! appengine(v1beta4)
* @type object
* @property {string} minPendingLatency Minimum amount of time a request should wait in the pending queue before starting a new instance to handle it.
* @property {appengine(v1beta4).RequestUtilization} requestUtilization Target scaling by request utilization.
* @property {integer} maxIdleInstances Maximum number of idle instances that should be maintained for this version.
* @property {integer} minIdleInstances Minimum number of idle instances that should be maintained for this version. Only applicable for the default version of a module.
* @property {integer} maxTotalInstances Maximum number of instances that should be started to handle requests.
* @property {integer} minTotalInstances Minimum number of instances that should be maintained for this version.
* @property {appengine(v1beta4).NetworkUtilization} networkUtilization Target scaling by network usage.
* @property {integer} maxConcurrentRequests Number of concurrent requests an automatic scaling instance can accept before the scheduler spawns a new instance.Defaults to a runtime-specific value.
* @property {string} coolDownPeriod Amount of time that the Autoscaler (https://cloud.google.com/compute/docs/autoscaler/) should wait between changes to the number of virtual machines. Only applicable for VM runtimes.
* @property {string} maxPendingLatency Maximum amount of time that a request should wait in the pending queue before starting a new instance to handle it.
* @property {appengine(v1beta4).CpuUtilization} cpuUtilization Target scaling by CPU usage.
* @property {appengine(v1beta4).DiskUtilization} diskUtilization Target scaling by disk usage.
*/
/**
* @typedef NetworkUtilization
* @memberOf! appengine(v1beta4)
* @type object
* @property {integer} targetReceivedBytesPerSec Target bytes received per second.
* @property {integer} targetSentPacketsPerSec Target packets sent per second.
* @property {integer} targetSentBytesPerSec Target bytes sent per second.
* @property {integer} targetReceivedPacketsPerSec Target packets received per second.
*/
/**
* @typedef Location
* @memberOf! appengine(v1beta4)
* @type object
* @property {string} name Resource name for the location, which may vary between implementations. For example: "projects/example-project/locations/us-east1"
* @property {string} locationId The canonical id for this location. For example: "us-east1".
* @property {object} metadata Service-specific metadata. For example the available capacity at the given location.
* @property {object} labels Cross-service attributes for the location. For example
{"cloud.googleapis.com/region": "us-east1"}
*/
/**
* @typedef HealthCheck
* @memberOf! appengine(v1beta4)
* @type object
* @property {integer} restartThreshold Number of consecutive failed health checks required before an instance is restarted.
* @property {integer} healthyThreshold Number of consecutive successful health checks required before receiving traffic.
* @property {string} checkInterval Interval between health checks.
* @property {string} timeout Time before the health check is considered failed.
* @property {integer} unhealthyThreshold Number of consecutive failed health checks required before removing traffic.
* @property {boolean} disableHealthCheck Whether to explicitly disable health checks for this instance.
* @property {string} host Host header to send when performing an HTTP health check. Example: "myapp.appspot.com"
*/
/**
* @typedef DebugInstanceRequest
* @memberOf! appengine(v1beta4)
* @type object
* @property {string} sshKey Public SSH key to add to the instance. Examples:
[USERNAME]:ssh-rsa [KEY_VALUE] [USERNAME]
[USERNAME]:ssh-rsa [KEY_VALUE] google-ssh {"userName":"[USERNAME]","expireOn":"[EXPIRE_TIME]"}For more information, see Adding and Removing SSH Keys (https://cloud.google.com/compute/docs/instances/adding-removing-ssh-keys).
*/
/**
* @typedef SourceReference
* @memberOf! appengine(v1beta4)
* @type object
* @property {string} revisionId The canonical, persistent identifier of the deployed revision. Aliases that include tags or branch names are not allowed. Example (git): "2198322f89e0bb2e25021667c2ed489d1fd34e6b"
* @property {string} repository URI string identifying the repository. Example: "https://source.developers.google.com/p/app-123/r/default"
*/
/**
* @typedef OperationMetadataV1Beta5
* @memberOf! appengine(v1beta4)
* @type object
* @property {string} method API method name that initiated this operation. Example: google.appengine.v1beta5.Version.CreateVersion.@OutputOnly
* @property {string} insertTime Timestamp that this operation was created.@OutputOnly
* @property {string} endTime Timestamp that this operation completed.@OutputOnly
* @property {string} user User who requested this operation.@OutputOnly
* @property {string} target Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly
*/
/**
* @typedef Library
* @memberOf! appengine(v1beta4)
* @type object
* @property {string} version Version of the library to select, or "latest".
* @property {string} name Name of the library. Example: "django".
*/
/**
* @typedef ListLocationsResponse
* @memberOf! appengine(v1beta4)
* @type object
* @property {appengine(v1beta4).Location[]} locations A list of locations that matches the specified filter in the request.
* @property {string} nextPageToken The standard List next-page token.
*/
/**
* @typedef Version
* @memberOf! appengine(v1beta4)
* @type object
* @property {object} envVariables Environment variables made available to the application.Only returned in GET requests if view=FULL is set.
* @property {appengine(v1beta4).Network} network Extra network settings. Only applicable for VM runtimes.
* @property {object} betaSettings Metadata settings that are supplied to this version to enable beta runtime features.
* @property {string} env App Engine execution environment to use for this version.Defaults to 1.
* @property {appengine(v1beta4).UrlMap[]} handlers An ordered list of URL-matching patterns that should be applied to incoming requests. The first matching URL handles the request and other request handlers are not attempted.Only returned in GET requests if view=FULL is set.
* @property {string} deployer Email address of the user who created this version.@OutputOnly
* @property {appengine(v1beta4).AutomaticScaling} automaticScaling Automatic scaling is based on request rate, response latencies, and other application metrics.
* @property {appengine(v1beta4).HealthCheck} healthCheck Configures health checking for VM instances. Unhealthy instances are stopped and replaced with new instances. Only applicable for VM runtimes.Only returned in GET requests if view=FULL is set.
* @property {boolean} threadsafe Whether multiple requests can be dispatched to this version at once.
* @property {appengine(v1beta4).ManualScaling} manualScaling A module with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time.
* @property {string} name Full path to the Version resource in the API. Example: apps/myapp/modules/default/versions/v1.@OutputOnly
* @property {appengine(v1beta4).ApiConfigHandler} apiConfig Serving configuration for Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/).Only returned in GET requests if view=FULL is set.
* @property {boolean} vm Whether to deploy this version in a container on a virtual machine.
* @property {string} instanceClass Instance class that is used to run this version. Valid values are:
AutomaticScaling: F1, F2, F4, F4_1G
ManualScaling or BasicScaling: B1, B2, B4, B8, B4_1GDefaults to F1 for AutomaticScaling and B1 for ManualScaling or BasicScaling.
* @property {string} servingStatus Current serving status of this version. Only the versions with a SERVING status create instances and can be billed.SERVING_STATUS_UNSPECIFIED is an invalid value. Defaults to SERVING.
* @property {appengine(v1beta4).Deployment} deployment Code and application artifacts that make up this version.Only returned in GET requests if view=FULL is set.
* @property {string[]} inboundServices Before an application can receive email or XMPP messages, the application must be configured to enable the service.
* @property {appengine(v1beta4).Resources} resources Machine resources for this version. Only applicable for VM runtimes.
* @property {appengine(v1beta4).ErrorHandler[]} errorHandlers Custom static error pages. Limited to 10KB per page.Only returned in GET requests if view=FULL is set.
* @property {string} defaultExpiration Duration that static files should be cached by web proxies and browsers. Only applicable if the corresponding StaticFilesHandler (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#staticfileshandler) does not specify its own expiration time.Only returned in GET requests if view=FULL is set.
* @property {appengine(v1beta4).Library[]} libraries Configuration for third-party Python runtime libraries required by the application.Only returned in GET requests if view=FULL is set.
* @property {string} nobuildFilesRegex Files that match this pattern will not be built into this version. Only applicable for Go runtimes.Only returned in GET requests if view=FULL is set.
* @property {string} creationTime Time that this version was created.@OutputOnly
* @property {appengine(v1beta4).BasicScaling} basicScaling A module with basic scaling will create an instance when the application receives a request. The instance will be turned down when the app becomes idle. Basic scaling is ideal for work that is intermittent or driven by user activity.
* @property {string} runtime Desired runtime. Example: python27.
* @property {string} id Relative name of the version within the module. Example: v1. Version names can contain only lowercase letters, numbers, or hyphens. Reserved names: "default", "latest", and any name with the prefix "ah-".
*/
/**
* @typedef ContainerInfo
* @memberOf! appengine(v1beta4)
* @type object
* @property {string} image URI to the hosted container image in Google Container Registry. The URI must be fully qualified and include a tag or digest. Examples: "gcr.io/my-project/image:tag" or "gcr.io/my-project/image@digest"
*/
/**
* @typedef RequestUtilization
* @memberOf! appengine(v1beta4)
* @type object
* @property {integer} targetRequestCountPerSec Target requests per second.
* @property {integer} targetConcurrentRequests Target number of concurrent requests.
*/
module.exports = Appengine;
|
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* Google App Engine Admin API
*
* The App Engine Admin API enables developers to provision and manage their App Engine applications.
*
* @example
* var google = require('googleapis');
* var appengine = google.appengine('v1beta5');
*
* @namespace appengine
* @type {Function}
* @version v1beta5
* @variation v1beta5
* @param {object=} options Options for Appengine
*/
function Appengine(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.apps = {
/**
* appengine.apps.get
*
* @desc Gets information about an application.
*
* @alias appengine.apps.get
* @memberOf! appengine(v1beta5)
*
* @param {object} params Parameters for request
* @param {boolean=} params.ensureResourcesExist Certain resources associated with an application are created on-demand. Controls whether these resources should be created when performing the GET operation. If specified and any resources could not be created, the request will fail with an error code. Additionally, this parameter can cause the request to take longer to complete. Note: This parameter will be deprecated in a future version of the API.
* @param {string} params.appsId Part of `name`. Name of the application to get. Example: apps/myapp.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta5/apps/{appsId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId'],
pathParams: ['appsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.patch
*
* @desc Updates the specified Application resource. You can update the following fields: auth_domain (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta5/apps#Application.FIELDS.auth_domain) default_cookie_expiration (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta5/apps#Application.FIELDS.default_cookie_expiration)
*
* @alias appengine.apps.patch
* @memberOf! appengine(v1beta5)
*
* @param {object} params Parameters for request
* @param {string} params.appsId Part of `name`. Name of the Application resource to update. Example: apps/myapp.
* @param {string=} params.mask Standard field mask for the set of fields to be updated.
* @param {appengine(v1beta5).Application} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta5/apps/{appsId}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['appsId'],
pathParams: ['appsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.create
*
* @desc Creates an App Engine application for a Google Cloud Platform project. Required fields: id - The ID of the target Cloud Platform project. location - The region (https://cloud.google.com/appengine/docs/locations) where you want the App Engine application located.For more information about App Engine applications, see Managing Projects, Applications, and Billing (https://cloud.google.com/appengine/docs/python/console/).
*
* @alias appengine.apps.create
* @memberOf! appengine(v1beta5)
*
* @param {object} params Parameters for request
* @param {appengine(v1beta5).Application} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
create: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta5/apps',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
services: {
/**
* appengine.apps.services.get
*
* @desc Gets the current configuration of the specified service.
*
* @alias appengine.apps.services.get
* @memberOf! appengine(v1beta5)
*
* @param {object} params Parameters for request
* @param {string} params.appsId Part of `name`. Name of the resource requested. Example: apps/myapp/services/default.
* @param {string} params.servicesId Part of `name`. See documentation of `appsId`.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta5/apps/{appsId}/services/{servicesId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId', 'servicesId'],
pathParams: ['appsId', 'servicesId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.services.list
*
* @desc Lists all the services in the application.
*
* @alias appengine.apps.services.list
* @memberOf! appengine(v1beta5)
*
* @param {object} params Parameters for request
* @param {string} params.appsId Part of `name`. Name of the resource requested. Example: apps/myapp.
* @param {string=} params.pageToken Continuation token for fetching the next page of results.
* @param {integer=} params.pageSize Maximum results to return per page.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta5/apps/{appsId}/services',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId'],
pathParams: ['appsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.services.patch
*
* @desc Updates the configuration of the specified service.
*
* @alias appengine.apps.services.patch
* @memberOf! appengine(v1beta5)
*
* @param {object} params Parameters for request
* @param {string=} params.mask Standard field mask for the set of fields to be updated.
* @param {string} params.servicesId Part of `name`. See documentation of `appsId`.
* @param {string} params.appsId Part of `name`. Name of the resource to update. Example: apps/myapp/services/default.
* @param {boolean=} params.migrateTraffic Set to true to gradually shift traffic to one or more versions that you specify. By default, traffic is shifted immediately. For gradual traffic migration, the target versions must be located within instances that are configured for both warmup requests (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta5/apps.services.versions#inboundservicetype) and automatic scaling (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta5/apps.services.versions#automaticscaling). You must specify the shardBy (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta5/apps.services#shardby) field in the Service resource. Gradual traffic migration is not supported in the App Engine flexible environment. For examples, see Migrating and Splitting Traffic (https://cloud.google.com/appengine/docs/admin-api/migrating-splitting-traffic).
* @param {appengine(v1beta5).Service} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta5/apps/{appsId}/services/{servicesId}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['appsId', 'servicesId'],
pathParams: ['servicesId', 'appsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.services.delete
*
* @desc Deletes the specified service and all enclosed versions.
*
* @alias appengine.apps.services.delete
* @memberOf! appengine(v1beta5)
*
* @param {object} params Parameters for request
* @param {string} params.servicesId Part of `name`. See documentation of `appsId`.
* @param {string} params.appsId Part of `name`. Name of the resource requested. Example: apps/myapp/services/default.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta5/apps/{appsId}/services/{servicesId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['appsId', 'servicesId'],
pathParams: ['servicesId', 'appsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
versions: {
/**
* appengine.apps.services.versions.create
*
* @desc Deploys new code and resource files to a new version.
*
* @alias appengine.apps.services.versions.create
* @memberOf! appengine(v1beta5)
*
* @param {object} params Parameters for request
* @param {string} params.servicesId Part of `name`. See documentation of `appsId`.
* @param {string} params.appsId Part of `name`. Name of the resource to update. For example: "apps/myapp/services/default".
* @param {appengine(v1beta5).Version} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
create: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta5/apps/{appsId}/services/{servicesId}/versions',
method: 'POST'
}, options),
params: params,
requiredParams: ['appsId', 'servicesId'],
pathParams: ['servicesId', 'appsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.services.versions.delete
*
* @desc Deletes an existing version.
*
* @alias appengine.apps.services.versions.delete
* @memberOf! appengine(v1beta5)
*
* @param {object} params Parameters for request
* @param {string} params.servicesId Part of `name`. See documentation of `appsId`.
* @param {string} params.appsId Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1.
* @param {string} params.versionsId Part of `name`. See documentation of `appsId`.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['appsId', 'servicesId', 'versionsId'],
pathParams: ['servicesId', 'appsId', 'versionsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.services.versions.get
*
* @desc Gets the specified Version resource. By default, only a BASIC_VIEW will be returned. Specify the FULL_VIEW parameter to get the full resource.
*
* @alias appengine.apps.services.versions.get
* @memberOf! appengine(v1beta5)
*
* @param {object} params Parameters for request
* @param {string} params.servicesId Part of `name`. See documentation of `appsId`.
* @param {string} params.appsId Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1.
* @param {string} params.versionsId Part of `name`. See documentation of `appsId`.
* @param {string=} params.view Controls the set of fields returned in the Get response.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId', 'servicesId', 'versionsId'],
pathParams: ['servicesId', 'appsId', 'versionsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.services.versions.list
*
* @desc Lists the versions of a service.
*
* @alias appengine.apps.services.versions.list
* @memberOf! appengine(v1beta5)
*
* @param {object} params Parameters for request
* @param {string} params.appsId Part of `name`. Name of the resource requested. Example: apps/myapp/services/default.
* @param {string=} params.pageToken Continuation token for fetching the next page of results.
* @param {integer=} params.pageSize Maximum results to return per page.
* @param {string=} params.view Controls the set of fields returned in the List response.
* @param {string} params.servicesId Part of `name`. See documentation of `appsId`.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta5/apps/{appsId}/services/{servicesId}/versions',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId', 'servicesId'],
pathParams: ['appsId', 'servicesId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.services.versions.patch
*
* @desc Updates the specified Version resource. You can specify the following fields depending on the App Engine environment and type of scaling that the version resource uses: serving_status (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta5/apps.services.versions#Version.FIELDS.serving_status): For Version resources that use basic scaling, manual scaling, or run in the App Engine flexible environment. instance_class (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta5/apps.services.versions#Version.FIELDS.instance_class): For Version resources that run in the App Engine standard environment. automatic_scaling.min_idle_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta5/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine standard environment. automatic_scaling.max_idle_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta5/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine standard environment.
*
* @alias appengine.apps.services.versions.patch
* @memberOf! appengine(v1beta5)
*
* @param {object} params Parameters for request
* @param {string} params.appsId Part of `name`. Name of the resource to update. Example: apps/myapp/services/default/versions/1.
* @param {string} params.versionsId Part of `name`. See documentation of `appsId`.
* @param {string=} params.mask Standard field mask for the set of fields to be updated.
* @param {string} params.servicesId Part of `name`. See documentation of `appsId`.
* @param {appengine(v1beta5).Version} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['appsId', 'servicesId', 'versionsId'],
pathParams: ['appsId', 'versionsId', 'servicesId'],
context: self
};
return createAPIRequest(parameters, callback);
},
instances: {
/**
* appengine.apps.services.versions.instances.delete
*
* @desc Stops a running instance.
*
* @alias appengine.apps.services.versions.instances.delete
* @memberOf! appengine(v1beta5)
*
* @param {object} params Parameters for request
* @param {string} params.appsId Part of `name`. Name of the resource requested. For example: "apps/myapp/services/default/versions/v1/instances/instance-1".
* @param {string} params.instancesId Part of `name`. See documentation of `appsId`.
* @param {string} params.versionsId Part of `name`. See documentation of `appsId`.
* @param {string} params.servicesId Part of `name`. See documentation of `appsId`.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['appsId', 'servicesId', 'versionsId', 'instancesId'],
pathParams: ['appsId', 'instancesId', 'versionsId', 'servicesId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.services.versions.instances.get
*
* @desc Gets instance information.
*
* @alias appengine.apps.services.versions.instances.get
* @memberOf! appengine(v1beta5)
*
* @param {object} params Parameters for request
* @param {string} params.servicesId Part of `name`. See documentation of `appsId`.
* @param {string} params.appsId Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1/instances/instance-1.
* @param {string} params.instancesId Part of `name`. See documentation of `appsId`.
* @param {string} params.versionsId Part of `name`. See documentation of `appsId`.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId', 'servicesId', 'versionsId', 'instancesId'],
pathParams: ['servicesId', 'appsId', 'instancesId', 'versionsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.services.versions.instances.list
*
* @desc Lists the instances of a version.Tip: To aggregate details about instances over time, see the Stackdriver Monitoring API (https://cloud.google.com/monitoring/api/ref_v3/rest/v3/projects.timeSeries/list).
*
* @alias appengine.apps.services.versions.instances.list
* @memberOf! appengine(v1beta5)
*
* @param {object} params Parameters for request
* @param {string} params.servicesId Part of `name`. See documentation of `appsId`.
* @param {string} params.appsId Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1.
* @param {string=} params.pageToken Continuation token for fetching the next page of results.
* @param {integer=} params.pageSize Maximum results to return per page.
* @param {string} params.versionsId Part of `name`. See documentation of `appsId`.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId', 'servicesId', 'versionsId'],
pathParams: ['servicesId', 'appsId', 'versionsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.services.versions.instances.debug
*
* @desc Enables debugging on a VM instance. This allows you to use the SSH command to connect to the virtual machine where the instance lives. While in "debug mode", the instance continues to serve live traffic. You should delete the instance when you are done debugging and then allow the system to take over and determine if another instance should be started.Only applicable for instances in App Engine flexible environment.
*
* @alias appengine.apps.services.versions.instances.debug
* @memberOf! appengine(v1beta5)
*
* @param {object} params Parameters for request
* @param {string} params.versionsId Part of `name`. See documentation of `appsId`.
* @param {string} params.servicesId Part of `name`. See documentation of `appsId`.
* @param {string} params.appsId Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1/instances/instance-1.
* @param {string} params.instancesId Part of `name`. See documentation of `appsId`.
* @param {appengine(v1beta5).DebugInstanceRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
debug: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}:debug',
method: 'POST'
}, options),
params: params,
requiredParams: ['appsId', 'servicesId', 'versionsId', 'instancesId'],
pathParams: ['versionsId', 'servicesId', 'appsId', 'instancesId'],
context: self
};
return createAPIRequest(parameters, callback);
}
}
}
},
operations: {
/**
* appengine.apps.operations.list
*
* @desc Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns UNIMPLEMENTED.NOTE: the name binding below allows API services to override the binding to use different resource name schemes, such as users/x/operations.
*
* @alias appengine.apps.operations.list
* @memberOf! appengine(v1beta5)
*
* @param {object} params Parameters for request
* @param {string=} params.filter The standard list filter.
* @param {string} params.appsId Part of `name`. The name of the operation collection.
* @param {string=} params.pageToken The standard list page token.
* @param {integer=} params.pageSize The standard list page size.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta5/apps/{appsId}/operations',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId'],
pathParams: ['appsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.operations.get
*
* @desc Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.
*
* @alias appengine.apps.operations.get
* @memberOf! appengine(v1beta5)
*
* @param {object} params Parameters for request
* @param {string} params.operationsId Part of `name`. See documentation of `appsId`.
* @param {string} params.appsId Part of `name`. The name of the operation resource.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta5/apps/{appsId}/operations/{operationsId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId', 'operationsId'],
pathParams: ['operationsId', 'appsId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
locations: {
/**
* appengine.apps.locations.list
*
* @desc Lists information about the supported locations for this service.
*
* @alias appengine.apps.locations.list
* @memberOf! appengine(v1beta5)
*
* @param {object} params Parameters for request
* @param {string=} params.filter The standard list filter.
* @param {string} params.appsId Part of `name`. The resource that owns the locations collection, if applicable.
* @param {string=} params.pageToken The standard list page token.
* @param {integer=} params.pageSize The standard list page size.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta5/apps/{appsId}/locations',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId'],
pathParams: ['appsId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* appengine.apps.locations.get
*
* @desc Get information about a location.
*
* @alias appengine.apps.locations.get
* @memberOf! appengine(v1beta5)
*
* @param {object} params Parameters for request
* @param {string} params.locationsId Part of `name`. See documentation of `appsId`.
* @param {string} params.appsId Part of `name`. Resource name for the location.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://appengine.googleapis.com/v1beta5/apps/{appsId}/locations/{locationsId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['appsId', 'locationsId'],
pathParams: ['locationsId', 'appsId'],
context: self
};
return createAPIRequest(parameters, callback);
}
}
};
}
/**
* @typedef Deployment
* @memberOf! appengine(v1beta5)
* @type object
* @property {object} files Manifest of the files stored in Google Cloud Storage that are included as part of this version. All files must be readable using the credentials supplied with this call.
* @property {appengine(v1beta5).ContainerInfo} container The Docker image for the container that runs the version. Only applicable for instances running in the App Engine flexible environment.
* @property {appengine(v1beta5).SourceReference[]} sourceReferences Origin of the source code for this deployment. There can be more than one source reference per version if source code is distributed among multiple repositories.
*/
/**
* @typedef Resources
* @memberOf! appengine(v1beta5)
* @type object
* @property {appengine(v1beta5).Volume[]} volumes Volumes mounted within the app container.
* @property {number} diskGb Disk size (GB) needed.
* @property {number} cpu Number of CPU cores needed.
* @property {number} memoryGb Memory (GB) needed.
*/
/**
* @typedef Service
* @memberOf! appengine(v1beta5)
* @type object
* @property {string} name Full path to the Service resource in the API. Example: apps/myapp/services/default.@OutputOnly
* @property {appengine(v1beta5).TrafficSplit} split Mapping that defines fractional HTTP traffic diversion to different versions within the service.
* @property {string} id Relative name of the service within the application. Example: default.@OutputOnly
*/
/**
* @typedef Volume
* @memberOf! appengine(v1beta5)
* @type object
* @property {number} sizeGb Volume size in gigabytes.
* @property {string} name Unique name for the volume.
* @property {string} volumeType Underlying volume type, e.g. 'tmpfs'.
*/
/**
* @typedef ListOperationsResponse
* @memberOf! appengine(v1beta5)
* @type object
* @property {appengine(v1beta5).Operation[]} operations A list of operations that matches the specified filter in the request.
* @property {string} nextPageToken The standard List next-page token.
*/
/**
* @typedef OperationMetadata
* @memberOf! appengine(v1beta5)
* @type object
* @property {string} endTime Timestamp that this operation completed.@OutputOnly
* @property {string} operationType Type of this operation. Deprecated, use method field instead. Example: "create_version".@OutputOnly
* @property {string} insertTime Timestamp that this operation was created.@OutputOnly
* @property {string} target Name of the resource that this operation is acting on. Example: apps/myapp/modules/default.@OutputOnly
* @property {string} user User who requested this operation.@OutputOnly
* @property {string} method API method that initiated this operation. Example: google.appengine.v1beta4.Version.CreateVersion.@OutputOnly
*/
/**
* @typedef ListInstancesResponse
* @memberOf! appengine(v1beta5)
* @type object
* @property {string} nextPageToken Continuation token for fetching the next page of results.
* @property {appengine(v1beta5).Instance[]} instances The instances belonging to the requested version.
*/
/**
* @typedef OperationMetadataV1
* @memberOf! appengine(v1beta5)
* @type object
* @property {string} target Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly
* @property {string} user User who requested this operation.@OutputOnly
* @property {string} ephemeralMessage Ephemeral message that may change every time the operation is polled. @OutputOnly
* @property {string} method API method that initiated this operation. Example: google.appengine.v1.Versions.CreateVersion.@OutputOnly
* @property {string} endTime Time that this operation completed.@OutputOnly
* @property {string} insertTime Time that this operation was created.@OutputOnly
* @property {string[]} warning Durable messages that persist on every operation poll. @OutputOnly
*/
/**
* @typedef ErrorHandler
* @memberOf! appengine(v1beta5)
* @type object
* @property {string} errorCode Error condition this handler applies to.
* @property {string} mimeType MIME type of file. Defaults to text/html.
* @property {string} staticFile Static file content to be served for this error.
*/
/**
* @typedef Application
* @memberOf! appengine(v1beta5)
* @type object
* @property {string} name Full path to the Application resource in the API. Example: apps/myapp.@OutputOnly
* @property {string} authDomain Google Apps authentication domain that controls which users can access this application.Defaults to open access for any Google Account.
* @property {appengine(v1beta5).IdentityAwareProxy} iap
* @property {string} defaultCookieExpiration Cookie expiration policy for this application.
* @property {string} id Identifier of the Application resource. This identifier is equivalent to the project ID of the Google Cloud Platform project where you want to deploy your application. Example: myapp.
* @property {string} codeBucket A Google Cloud Storage bucket that can be used for storing files associated with this application. This bucket is associated with the application and can be used by the gcloud deployment commands.@OutputOnly
* @property {string} location Location from which this application will be run. Application instances will run out of data centers in the chosen location, which is also where all of the application's end user content is stored.Defaults to us-central.Options are:us-central - Central USeurope-west - Western Europeus-east1 - Eastern US
* @property {string} defaultBucket A Google Cloud Storage bucket that can be used by the application to store content.@OutputOnly
* @property {appengine(v1beta5).UrlDispatchRule[]} dispatchRules HTTP path dispatch rules for requests to the application that do not explicitly target a service or version. Rules are order-dependent.@OutputOnly
* @property {string} defaultHostname Hostname used to reach the application, as resolved by App Engine.@OutputOnly
*/
/**
* @typedef Network
* @memberOf! appengine(v1beta5)
* @type object
* @property {string[]} forwardedPorts List of ports, or port pairs, to forward from the virtual machine to the application container.
* @property {string} instanceTag Tag to apply to the VM instance during creation.
* @property {string} subnetworkName Google Cloud Platform sub-network where the virtual machines are created. Specify the short name, not the resource path.If a subnetwork name is specified, a network name will also be required unless it is for the default network.
If the network the VM instance is being created in is a Legacy network, then the IP address is allocated from the IPv4Range.
If the network the VM instance is being created in is an auto Subnet Mode Network, then only network name should be specified (not the subnetwork_name) and the IP address is created from the IPCidrRange of the subnetwork that exists in that zone for that network.
If the network the VM instance is being created in is a custom Subnet Mode Network, then the subnetwork_name must be specified and the IP address is created from the IPCidrRange of the subnetwork.If specified, the subnetwork must exist in the same region as the Flex app.
* @property {string} name Google Cloud Platform network where the virtual machines are created. Specify the short name, not the resource path.Defaults to default.
*/
/**
* @typedef UrlDispatchRule
* @memberOf! appengine(v1beta5)
* @type object
* @property {string} domain Domain name to match against. The wildcard "*" is supported if specified before a period: "*.".Defaults to matching all domains: "*".
* @property {string} service Resource id of a service in this application that should serve the matched request. The service must already exist. Example: default.
* @property {string} path Pathname within the host. Must start with a "/". A single "*" can be included at the end of the path. The sum of the lengths of the domain and path may not exceed 100 characters.
*/
/**
* @typedef Instance
* @memberOf! appengine(v1beta5)
* @type object
* @property {string} appEngineRelease App Engine release this instance is running on.@OutputOnly
* @property {string} startTimestamp Time that this instance was started.@OutputOnly
* @property {string} vmName Name of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment.@OutputOnly
* @property {number} qps Average queries per second (QPS) over the last minute.@OutputOnly
* @property {string} vmId Virtual machine ID of this instance. Only applicable for instances in App Engine flexible environment.@OutputOnly
* @property {boolean} vmUnlocked Whether this instance is in debug mode. Only applicable for instances in App Engine flexible environment.@OutputOnly
* @property {string} name Full path to the Instance resource in the API. Example: apps/myapp/services/default/versions/v1/instances/instance-1.@OutputOnly
* @property {string} vmZoneName Zone where the virtual machine is located. Only applicable for instances in App Engine flexible environment.@OutputOnly
* @property {integer} averageLatency Average latency (ms) over the last minute.@OutputOnly
* @property {string} id Relative name of the instance within the version. Example: instance-1.@OutputOnly
* @property {string} vmIp The IP address of this instance. Only applicable for instances in App Engine flexible environment.@OutputOnly
* @property {string} memoryUsage Total memory in use (bytes).@OutputOnly
* @property {integer} errors Number of errors since this instance was started.@OutputOnly
* @property {string} availability Availability of the instance.@OutputOnly
* @property {string} vmStatus Status of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment.@OutputOnly
* @property {integer} requests Number of requests since this instance was started.@OutputOnly
*/
/**
* @typedef ListVersionsResponse
* @memberOf! appengine(v1beta5)
* @type object
* @property {appengine(v1beta5).Version[]} versions The versions belonging to the requested service.
* @property {string} nextPageToken Continuation token for fetching the next page of results.
*/
/**
* @typedef ApiEndpointHandler
* @memberOf! appengine(v1beta5)
* @type object
* @property {string} scriptPath Path to the script from the application root directory.
*/
/**
* @typedef AutomaticScaling
* @memberOf! appengine(v1beta5)
* @type object
* @property {appengine(v1beta5).DiskUtilization} diskUtilization Target scaling by disk usage.
* @property {string} minPendingLatency Minimum amount of time a request should wait in the pending queue before starting a new instance to handle it.
* @property {integer} maxIdleInstances Maximum number of idle instances that should be maintained for this version.
* @property {appengine(v1beta5).RequestUtilization} requestUtilization Target scaling by request utilization.
* @property {integer} minIdleInstances Minimum number of idle instances that should be maintained for this version. Only applicable for the default version of a module.
* @property {integer} maxTotalInstances Maximum number of instances that should be started to handle requests.
* @property {integer} minTotalInstances Minimum number of instances that should be maintained for this version.
* @property {appengine(v1beta5).NetworkUtilization} networkUtilization Target scaling by network usage.
* @property {string} coolDownPeriod Amount of time that the Autoscaler (https://cloud.google.com/compute/docs/autoscaler/) should wait between changes to the number of virtual machines. Only applicable for VM runtimes.
* @property {integer} maxConcurrentRequests Number of concurrent requests an automatic scaling instance can accept before the scheduler spawns a new instance.Defaults to a runtime-specific value.
* @property {string} maxPendingLatency Maximum amount of time that a request should wait in the pending queue before starting a new instance to handle it.
* @property {appengine(v1beta5).CpuUtilization} cpuUtilization Target scaling by CPU usage.
*/
/**
* @typedef Location
* @memberOf! appengine(v1beta5)
* @type object
* @property {object} labels Cross-service attributes for the location. For example
{"cloud.googleapis.com/region": "us-east1"}
* @property {string} name Resource name for the location, which may vary between implementations. For example: "projects/example-project/locations/us-east1"
* @property {string} locationId The canonical id for this location. For example: "us-east1".
* @property {object} metadata Service-specific metadata. For example the available capacity at the given location.
*/
/**
* @typedef NetworkUtilization
* @memberOf! appengine(v1beta5)
* @type object
* @property {integer} targetReceivedBytesPerSec Target bytes received per second.
* @property {integer} targetSentPacketsPerSec Target packets sent per second.
* @property {integer} targetSentBytesPerSec Target bytes sent per second.
* @property {integer} targetReceivedPacketsPerSec Target packets received per second.
*/
/**
* @typedef HealthCheck
* @memberOf! appengine(v1beta5)
* @type object
* @property {integer} unhealthyThreshold Number of consecutive failed health checks required before removing traffic.
* @property {boolean} disableHealthCheck Whether to explicitly disable health checks for this instance.
* @property {string} host Host header to send when performing an HTTP health check. Example: "myapp.appspot.com"
* @property {integer} restartThreshold Number of consecutive failed health checks required before an instance is restarted.
* @property {integer} healthyThreshold Number of consecutive successful health checks required before receiving traffic.
* @property {string} checkInterval Interval between health checks.
* @property {string} timeout Time before the health check is considered failed.
*/
/**
* @typedef DebugInstanceRequest
* @memberOf! appengine(v1beta5)
* @type object
* @property {string} sshKey Public SSH key to add to the instance. Examples:
[USERNAME]:ssh-rsa [KEY_VALUE] [USERNAME]
[USERNAME]:ssh-rsa [KEY_VALUE] google-ssh {"userName":"[USERNAME]","expireOn":"[EXPIRE_TIME]"}For more information, see Adding and Removing SSH Keys (https://cloud.google.com/compute/docs/instances/adding-removing-ssh-keys).
*/
/**
* @typedef SourceReference
* @memberOf! appengine(v1beta5)
* @type object
* @property {string} repository URI string identifying the repository. Example: "https://source.developers.google.com/p/app-123/r/default"
* @property {string} revisionId The canonical, persistent identifier of the deployed revision. Aliases that include tags or branch names are not allowed. Example (git): "2198322f89e0bb2e25021667c2ed489d1fd34e6b"
*/
/**
* @typedef OperationMetadataV1Beta5
* @memberOf! appengine(v1beta5)
* @type object
* @property {string} insertTime Timestamp that this operation was created.@OutputOnly
* @property {string} endTime Timestamp that this operation completed.@OutputOnly
* @property {string} user User who requested this operation.@OutputOnly
* @property {string} target Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly
* @property {string} method API method name that initiated this operation. Example: google.appengine.v1beta5.Version.CreateVersion.@OutputOnly
*/
/**
* @typedef Library
* @memberOf! appengine(v1beta5)
* @type object
* @property {string} name Name of the library. Example: "django".
* @property {string} version Version of the library to select, or "latest".
*/
/**
* @typedef ListLocationsResponse
* @memberOf! appengine(v1beta5)
* @type object
* @property {string} nextPageToken The standard List next-page token.
* @property {appengine(v1beta5).Location[]} locations A list of locations that matches the specified filter in the request.
*/
/**
* @typedef Version
* @memberOf! appengine(v1beta5)
* @type object
* @property {appengine(v1beta5).EndpointsApiService} endpointsApiService Cloud Endpoints configuration.If endpoints_api_service is set, the Cloud Endpoints Extensible Service Proxy will be provided to serve the API implemented by the app.
* @property {boolean} vm Whether to deploy this version in a container on a virtual machine.
* @property {string} instanceClass Instance class that is used to run this version. Valid values are:
AutomaticScaling: F1, F2, F4, F4_1G
ManualScaling or BasicScaling: B1, B2, B4, B8, B4_1GDefaults to F1 for AutomaticScaling and B1 for ManualScaling or BasicScaling.
* @property {string} servingStatus Current serving status of this version. Only the versions with a SERVING status create instances and can be billed.SERVING_STATUS_UNSPECIFIED is an invalid value. Defaults to SERVING.
* @property {appengine(v1beta5).Deployment} deployment Code and application artifacts that make up this version.Only returned in GET requests if view=FULL is set.
* @property {appengine(v1beta5).Resources} resources Machine resources for this version. Only applicable for VM runtimes.
* @property {string[]} inboundServices Before an application can receive email or XMPP messages, the application must be configured to enable the service.
* @property {appengine(v1beta5).ErrorHandler[]} errorHandlers Custom static error pages. Limited to 10KB per page.Only returned in GET requests if view=FULL is set.
* @property {string} defaultExpiration Duration that static files should be cached by web proxies and browsers. Only applicable if the corresponding StaticFilesHandler (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#staticfileshandler) does not specify its own expiration time.Only returned in GET requests if view=FULL is set.
* @property {appengine(v1beta5).Library[]} libraries Configuration for third-party Python runtime libraries required by the application.Only returned in GET requests if view=FULL is set.
* @property {string} creationTime Time that this version was created.@OutputOnly
* @property {string} nobuildFilesRegex Files that match this pattern will not be built into this version. Only applicable for Go runtimes.Only returned in GET requests if view=FULL is set.
* @property {appengine(v1beta5).BasicScaling} basicScaling A service with basic scaling will create an instance when the application receives a request. The instance will be turned down when the app becomes idle. Basic scaling is ideal for work that is intermittent or driven by user activity.
* @property {string} runtime Desired runtime. Example: python27.
* @property {string} id Relative name of the version within the module. Example: v1. Version names can contain only lowercase letters, numbers, or hyphens. Reserved names: "default", "latest", and any name with the prefix "ah-".
* @property {object} envVariables Environment variables made available to the application.Only returned in GET requests if view=FULL is set.
* @property {appengine(v1beta5).Network} network Extra network settings. Only applicable for VM runtimes.
* @property {object} betaSettings Metadata settings that are supplied to this version to enable beta runtime features.
* @property {string} env App Engine execution environment to use for this version.Defaults to 1.
* @property {appengine(v1beta5).UrlMap[]} handlers An ordered list of URL-matching patterns that should be applied to incoming requests. The first matching URL handles the request and other request handlers are not attempted.Only returned in GET requests if view=FULL is set.
* @property {string} deployer Email address of the user who created this version.@OutputOnly
* @property {appengine(v1beta5).AutomaticScaling} automaticScaling Automatic scaling is based on request rate, response latencies, and other application metrics.
* @property {string} diskUsageBytes Total size of version files hosted on App Engine disk in bytes.@OutputOnly
* @property {appengine(v1beta5).HealthCheck} healthCheck Configures health checking for VM instances. Unhealthy instances are be stopped and replaced with new instances. Only applicable for VM runtimes.Only returned in GET requests if view=FULL is set.
* @property {boolean} threadsafe Whether multiple requests can be dispatched to this version at once.
* @property {appengine(v1beta5).ManualScaling} manualScaling A service with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time.
* @property {string} name Full path to the Version resource in the API. Example: apps/myapp/services/default/versions/v1.@OutputOnly
* @property {appengine(v1beta5).ApiConfigHandler} apiConfig Serving configuration for Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/).Only returned in GET requests if view=FULL is set.
*/
/**
* @typedef ContainerInfo
* @memberOf! appengine(v1beta5)
* @type object
* @property {string} image URI to the hosted container image in Google Container Registry. The URI must be fully qualified and include a tag or digest. Examples: "gcr.io/my-project/image:tag" or "gcr.io/my-project/image@digest"
*/
/**
* @typedef RequestUtilization
* @memberOf! appengine(v1beta5)
* @type object
* @property {integer} targetRequestCountPerSec Target requests per second.
* @property {integer} targetConcurrentRequests Target number of concurrent requests.
*/
/**
* @typedef UrlMap
* @memberOf! appengine(v1beta5)
* @type object
* @property {appengine(v1beta5).ApiEndpointHandler} apiEndpoint Uses API Endpoints to handle requests.
* @property {appengine(v1beta5).StaticFilesHandler} staticFiles Returns the contents of a file, such as an image, as the response.
* @property {string} redirectHttpResponseCode 30x code to use when performing redirects for the secure field. Defaults to 302.
* @property {string} securityLevel Security (HTTPS) enforcement for this URL.
* @property {string} authFailAction Action to take when users access resources that require authentication. Defaults to redirect.
* @property {appengine(v1beta5).ScriptHandler} script Executes a script to handle the request that matches this URL pattern.
* @property {string} urlRegex A URL prefix. Uses regular expression syntax, which means regexp special characters must be escaped, but should not contain groupings. All URLs that begin with this prefix are handled by this handler, using the portion of the URL after the prefix as part of the file path.
* @property {string} login Level of login required to access this resource.
*/
/**
* @typedef EndpointsApiService
* @memberOf! appengine(v1beta5)
* @type object
* @property {string} name Endpoints service name which is the name of the "service" resource in the Service Management API. For example "myapi.endpoints.myproject.cloud.goog"
* @property {string} configId Endpoints service configuration id as specified by the Service Management API. For example "2016-09-19r1"
*/
/**
* @typedef ApiConfigHandler
* @memberOf! appengine(v1beta5)
* @type object
* @property {string} url URL to serve the endpoint at.
* @property {string} securityLevel Security (HTTPS) enforcement for this URL.
* @property {string} authFailAction Action to take when users access resources that require authentication. Defaults to redirect.
* @property {string} script Path to the script from the application root directory.
* @property {string} login Level of login required to access this resource. Defaults to optional.
*/
/**
* @typedef Operation
* @memberOf! appengine(v1beta5)
* @type object
* @property {object} response The normal response of the operation in case of success. If the original method returns no data on success, such as Delete, the response is google.protobuf.Empty. If the original method is standard Get/Create/Update, the response should be the resource. For other methods, the response should have the type XxxResponse, where Xxx is the original method name. For example, if the original method name is TakeSnapshot(), the inferred response type is TakeSnapshotResponse.
* @property {string} name The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should have the format of operations/some/unique/name.
* @property {appengine(v1beta5).Status} error The error result of the operation in case of failure or cancellation.
* @property {object} metadata Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
* @property {boolean} done If the value is false, it means the operation is still in progress. If true, the operation is completed, and either error or response is available.
*/
/**
* @typedef ScriptHandler
* @memberOf! appengine(v1beta5)
* @type object
* @property {string} scriptPath Path to the script from the application root directory.
*/
/**
* @typedef StaticFilesHandler
* @memberOf! appengine(v1beta5)
* @type object
* @property {string} mimeType MIME type used to serve all files served by this handler. Defaults to file-specific MIME types, which are derived from each file's filename extension.
* @property {boolean} requireMatchingFile Whether this handler should match the request if the file referenced by the handler does not exist.
* @property {string} expiration Time a static file served by this handler should be cached.
* @property {object} httpHeaders HTTP headers to use for all responses from these URLs.
* @property {boolean} applicationReadable Whether files should also be uploaded as code data. By default, files declared in static file handlers are uploaded as static data and are only served to end users; they cannot be read by the application. If enabled, uploads are charged against both your code and static data storage resource quotas.
* @property {string} uploadPathRegex Regular expression that matches the file paths for all files that should be referenced by this handler.
* @property {string} path Path to the static files matched by the URL pattern, from the application root directory. The path can refer to text matched in groupings in the URL pattern.
*/
/**
* @typedef FileInfo
* @memberOf! appengine(v1beta5)
* @type object
* @property {string} sha1Sum The SHA1 hash of the file, in hex.
* @property {string} mimeType The MIME type of the file.Defaults to the value from Google Cloud Storage.
* @property {string} sourceUrl URL source to use to fetch this file. Must be a URL to a resource in Google Cloud Storage in the form 'http(s)://storage.googleapis.com/<bucket>/<object>'.
*/
/**
* @typedef DiskUtilization
* @memberOf! appengine(v1beta5)
* @type object
* @property {integer} targetWriteOpsPerSec Target ops written per second.
* @property {integer} targetWriteBytesPerSec Target bytes written per second.
* @property {integer} targetReadOpsPerSec Target ops read per second.
* @property {integer} targetReadBytesPerSec Target bytes read per second.
*/
/**
* @typedef BasicScaling
* @memberOf! appengine(v1beta5)
* @type object
* @property {integer} maxInstances Maximum number of instances to create for this version.
* @property {string} idleTimeout Duration of time after the last request that an instance must wait before the instance is shut down.
*/
/**
* @typedef OperationMetadataExperimental
* @memberOf! appengine(v1beta5)
* @type object
* @property {string} method API method that initiated this operation. Example: google.appengine.experimental.CustomDomains.CreateCustomDomain.@OutputOnly
* @property {string} insertTime Time that this operation was created.@OutputOnly
* @property {string} endTime Time that this operation completed.@OutputOnly
* @property {string} user User who requested this operation.@OutputOnly
* @property {string} target Name of the resource that this operation is acting on. Example: apps/myapp/customDomains/example.com.@OutputOnly
*/
/**
* @typedef CpuUtilization
* @memberOf! appengine(v1beta5)
* @type object
* @property {string} aggregationWindowLength Period of time over which CPU utilization is calculated.
* @property {number} targetUtilization Target CPU utilization ratio to maintain when scaling. Must be between 0 and 1.
*/
/**
* @typedef Status
* @memberOf! appengine(v1beta5)
* @type object
* @property {integer} code The status code, which should be an enum value of google.rpc.Code.
* @property {string} message A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
* @property {object[]} details A list of messages that carry the error details. There will be a common set of message types for APIs to use.
*/
/**
* @typedef IdentityAwareProxy
* @memberOf! appengine(v1beta5)
* @type object
* @property {string} oauth2ClientSecret For security reasons, this value cannot be retrieved via the API. Instead, the SHA-256 hash of the value is returned in the oauth2_client_secret_sha256 field.@InputOnly
* @property {string} oauth2ClientId OAuth2 client ID to use for the authentication flow.
* @property {string} oauth2ClientSecretSha256 Hex-encoded SHA-256 hash of the client secret.@OutputOnly
* @property {boolean} enabled Whether the serving infrastructure will authenticate and authorize all incoming requests.If true, the oauth2_client_id and oauth2_client_secret fields must be non-empty.
*/
/**
* @typedef ManualScaling
* @memberOf! appengine(v1beta5)
* @type object
* @property {integer} instances Number of instances to assign to the service at the start. This number can later be altered by using the Modules API (https://cloud.google.com/appengine/docs/python/modules/functions) set_num_instances() function.
*/
/**
* @typedef TrafficSplit
* @memberOf! appengine(v1beta5)
* @type object
* @property {string} shardBy Mechanism used to determine which version a request is sent to. The traffic selection algorithm will be stable for either type until allocations are changed.
* @property {object} allocations Mapping from version IDs within the service to fractional (0.000, 1] allocations of traffic for that version. Each version can be specified only once, but some versions in the service may not have any traffic allocation. Services that have traffic allocated cannot be deleted until either the service is deleted or their traffic allocation is removed. Allocations must sum to 1. Up to two decimal place precision is supported for IP-based splits and up to three decimal places is supported for cookie-based splits.
*/
/**
* @typedef LocationMetadata
* @memberOf! appengine(v1beta5)
* @type object
* @property {boolean} flexibleEnvironmentAvailable App Engine Flexible Environment is available in the given location.@OutputOnly
* @property {boolean} standardEnvironmentAvailable App Engine Standard Environment is available in the given location.@OutputOnly
*/
/**
* @typedef OperationMetadataV1Beta
* @memberOf! appengine(v1beta5)
* @type object
* @property {string[]} warning Durable messages that persist on every operation poll. @OutputOnly
* @property {string} insertTime Time that this operation was created.@OutputOnly
* @property {string} target Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly
* @property {string} user User who requested this operation.@OutputOnly
* @property {string} ephemeralMessage Ephemeral message that may change every time the operation is polled. @OutputOnly
* @property {string} method API method that initiated this operation. Example: google.appengine.v1beta.Versions.CreateVersion.@OutputOnly
* @property {string} endTime Time that this operation completed.@OutputOnly
*/
/**
* @typedef ListServicesResponse
* @memberOf! appengine(v1beta5)
* @type object
* @property {appengine(v1beta5).Service[]} services The services belonging to the requested application.
* @property {string} nextPageToken Continuation token for fetching the next page of results.
*/
module.exports = Appengine;
|
| File | Statements | Branches | Functions | Lines | |||||
|---|---|---|---|---|---|---|---|---|---|
| v1beta1.js | 9.3% | (4 / 43) | 0% | (0 / 26) | 0% | (0 / 7) | 9.3% | (4 / 43) |
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* Stackdriver Error Reporting API
*
* Stackdriver Error Reporting groups and counts similar errors from cloud services. The Stackdriver Error Reporting API provides a way to report new errors and read access to error groups and their associated errors.
*
* @example
* var google = require('googleapis');
* var clouderrorreporting = google.clouderrorreporting('v1beta1');
*
* @namespace clouderrorreporting
* @type {Function}
* @version v1beta1
* @variation v1beta1
* @param {object=} options Options for Clouderrorreporting
*/
function Clouderrorreporting(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.projects = {
/**
* clouderrorreporting.projects.deleteEvents
*
* @desc Deletes all error events of a given project.
*
* @alias clouderrorreporting.projects.deleteEvents
* @memberOf! clouderrorreporting(v1beta1)
*
* @param {object} params Parameters for request
* @param {string} params.projectName [Required] The resource name of the Google Cloud Platform project. Written as `projects/` plus the [Google Cloud Platform project ID](https://support.google.com/cloud/answer/6158840). Example: `projects/my-project-123`.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
deleteEvents: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://clouderrorreporting.googleapis.com/v1beta1/{projectName}/events',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['projectName'],
pathParams: ['projectName'],
context: self
};
return createAPIRequest(parameters, callback);
},
groups: {
/**
* clouderrorreporting.projects.groups.get
*
* @desc Get the specified group.
*
* @alias clouderrorreporting.projects.groups.get
* @memberOf! clouderrorreporting(v1beta1)
*
* @param {object} params Parameters for request
* @param {string} params.groupName [Required] The group resource name. Written as <code>projects/<var>projectID</var>/groups/<var>group_name</var></code>. Call <a href="/error-reporting/reference/rest/v1beta1/projects.groupStats/list"> <code>groupStats.list</code></a> to return a list of groups belonging to this project. Example: <code>projects/my-project-123/groups/my-group</code>
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://clouderrorreporting.googleapis.com/v1beta1/{groupName}',
method: 'GET'
}, options),
params: params,
requiredParams: ['groupName'],
pathParams: ['groupName'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouderrorreporting.projects.groups.update
*
* @desc Replace the data for the specified group. Fails if the group does not exist.
*
* @alias clouderrorreporting.projects.groups.update
* @memberOf! clouderrorreporting(v1beta1)
*
* @param {object} params Parameters for request
* @param {string} params.name The group resource name. Example: <code>projects/my-project-123/groups/my-groupid</code>
* @param {clouderrorreporting(v1beta1).ErrorGroup} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://clouderrorreporting.googleapis.com/v1beta1/{name}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['name'],
pathParams: ['name'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
groupStats: {
/**
* clouderrorreporting.projects.groupStats.list
*
* @desc Lists the specified groups.
*
* @alias clouderrorreporting.projects.groupStats.list
* @memberOf! clouderrorreporting(v1beta1)
*
* @param {object} params Parameters for request
* @param {string=} params.timedCountDuration [Optional] The preferred duration for a single returned `TimedCount`. If not set, no timed counts are returned.
* @param {string=} params.pageToken [Optional] A `next_page_token` provided by a previous response. To view additional results, pass this token along with the identical query parameters as the first request.
* @param {string=} params.timeRange.period Restricts the query to the specified time range.
* @param {string=} params.alignment [Optional] The alignment of the timed counts to be returned. Default is `ALIGNMENT_EQUAL_AT_END`.
* @param {string=} params.groupId [Optional] List all <code>ErrorGroupStats</code> with these IDs.
* @param {string=} params.serviceFilter.service [Optional] The exact value to match against [`ServiceContext.service`](/error-reporting/reference/rest/v1beta1/ServiceContext#FIELDS.service).
* @param {integer=} params.pageSize [Optional] The maximum number of results to return per response. Default is 20.
* @param {string=} params.serviceFilter.version [Optional] The exact value to match against [`ServiceContext.version`](/error-reporting/reference/rest/v1beta1/ServiceContext#FIELDS.version).
* @param {string=} params.order [Optional] The sort order in which the results are returned. Default is `COUNT_DESC`.
* @param {string=} params.serviceFilter.resourceType [Optional] The exact value to match against [`ServiceContext.resource_type`](/error-reporting/reference/rest/v1beta1/ServiceContext#FIELDS.resource_type).
* @param {string=} params.alignmentTime [Optional] Time where the timed counts shall be aligned if rounded alignment is chosen. Default is 00:00 UTC.
* @param {string} params.projectName [Required] The resource name of the Google Cloud Platform project. Written as <code>projects/</code> plus the <a href="https://support.google.com/cloud/answer/6158840">Google Cloud Platform project ID</a>. Example: <code>projects/my-project-123</code>.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://clouderrorreporting.googleapis.com/v1beta1/{projectName}/groupStats',
method: 'GET'
}, options),
params: params,
requiredParams: ['projectName'],
pathParams: ['projectName'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
events: {
/**
* clouderrorreporting.projects.events.list
*
* @desc Lists the specified events.
*
* @alias clouderrorreporting.projects.events.list
* @memberOf! clouderrorreporting(v1beta1)
*
* @param {object} params Parameters for request
* @param {string=} params.timeRange.period Restricts the query to the specified time range.
* @param {string} params.projectName [Required] The resource name of the Google Cloud Platform project. Written as `projects/` plus the [Google Cloud Platform project ID](https://support.google.com/cloud/answer/6158840). Example: `projects/my-project-123`.
* @param {string=} params.groupId [Required] The group for which events shall be returned.
* @param {string=} params.serviceFilter.service [Optional] The exact value to match against [`ServiceContext.service`](/error-reporting/reference/rest/v1beta1/ServiceContext#FIELDS.service).
* @param {string=} params.pageToken [Optional] A `next_page_token` provided by a previous response.
* @param {integer=} params.pageSize [Optional] The maximum number of results to return per response.
* @param {string=} params.serviceFilter.version [Optional] The exact value to match against [`ServiceContext.version`](/error-reporting/reference/rest/v1beta1/ServiceContext#FIELDS.version).
* @param {string=} params.serviceFilter.resourceType [Optional] The exact value to match against [`ServiceContext.resource_type`](/error-reporting/reference/rest/v1beta1/ServiceContext#FIELDS.resource_type).
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://clouderrorreporting.googleapis.com/v1beta1/{projectName}/events',
method: 'GET'
}, options),
params: params,
requiredParams: ['projectName'],
pathParams: ['projectName'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouderrorreporting.projects.events.report
*
* @desc Report an individual error event. This endpoint accepts <strong>either</strong> an OAuth token, <strong>or</strong> an <a href="https://support.google.com/cloud/answer/6158862">API key</a> for authentication. To use an API key, append it to the URL as the value of a `key` parameter. For example: <pre>POST https://clouderrorreporting.googleapis.com/v1beta1/projects/example-project/events:report?key=123ABC456</pre>
*
* @alias clouderrorreporting.projects.events.report
* @memberOf! clouderrorreporting(v1beta1)
*
* @param {object} params Parameters for request
* @param {string} params.projectName [Required] The resource name of the Google Cloud Platform project. Written as `projects/` plus the [Google Cloud Platform project ID](https://support.google.com/cloud/answer/6158840). Example: `projects/my-project-123`.
* @param {clouderrorreporting(v1beta1).ReportedErrorEvent} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
report: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://clouderrorreporting.googleapis.com/v1beta1/{projectName}/events:report',
method: 'POST'
}, options),
params: params,
requiredParams: ['projectName'],
pathParams: ['projectName'],
context: self
};
return createAPIRequest(parameters, callback);
}
}
};
}
/**
* @typedef ErrorContext
* @memberOf! clouderrorreporting(v1beta1)
* @type object
* @property {clouderrorreporting(v1beta1).SourceLocation} reportLocation The location in the source code where the decision was made to
report the error, usually the place where it was logged.
For a logged exception this would be the source line where the
exception is logged, usually close to the place where it was
caught. This value is in contrast to `Exception.cause_location`,
which describes the source line where the exception was thrown.
* @property {clouderrorreporting(v1beta1).HttpRequestContext} httpRequest The HTTP request which was processed when the error was
triggered.
* @property {string} user The user who caused or was affected by the crash.
This can be a user ID, an email address, or an arbitrary token that
uniquely identifies the user.
When sending an error report, leave this field empty if the user was not
logged in. In this case the
Error Reporting system will use other data, such as remote IP address, to
distinguish affected users. See `affected_users_count` in
`ErrorGroupStats`.
*/
/**
* @typedef TrackingIssue
* @memberOf! clouderrorreporting(v1beta1)
* @type object
* @property {string} url A URL pointing to a related entry in an issue tracking system.
Example: https://github.com/user/project/issues/4
*/
/**
* @typedef ErrorGroupStats
* @memberOf! clouderrorreporting(v1beta1)
* @type object
* @property {clouderrorreporting(v1beta1).ServiceContext[]} affectedServices Service contexts with a non-zero error count for the given filter
criteria. This list can be truncated if multiple services are affected.
Refer to `num_affected_services` for the total count.
* @property {integer} numAffectedServices The total number of services with a non-zero error count for the given
filter criteria.
* @property {clouderrorreporting(v1beta1).ErrorEvent} representative An arbitrary event that is chosen as representative for the whole group.
The representative event is intended to be used as a quick preview for
the whole group. Events in the group are usually sufficiently similar
to each other such that showing an arbitrary representative provides
insight into the characteristics of the group as a whole.
* @property {clouderrorreporting(v1beta1).TimedCount[]} timedCounts Approximate number of occurrences over time.
Timed counts returned by ListGroups are guaranteed to be:
- Inside the requested time interval
- Non-overlapping, and
- Ordered by ascending time.
* @property {clouderrorreporting(v1beta1).ErrorGroup} group Group data that is independent of the filter criteria.
* @property {string} firstSeenTime Approximate first occurrence that was ever seen for this group
and which matches the given filter criteria, ignoring the
time_range that was specified in the request.
* @property {string} count Approximate total number of events in the given group that match
the filter criteria.
* @property {string} lastSeenTime Approximate last occurrence that was ever seen for this group and
which matches the given filter criteria, ignoring the time_range
that was specified in the request.
* @property {string} affectedUsersCount Approximate number of affected users in the given group that
match the filter criteria.
Users are distinguished by data in the `ErrorContext` of the
individual error events, such as their login name or their remote
IP address in case of HTTP requests.
The number of affected users can be zero even if the number of
errors is non-zero if no data was provided from which the
affected user could be deduced.
Users are counted based on data in the request
context that was provided in the error report. If more users are
implicitly affected, such as due to a crash of the whole service,
this is not reflected here.
*/
/**
* @typedef ListEventsResponse
* @memberOf! clouderrorreporting(v1beta1)
* @type object
* @property {string} timeRangeBegin The timestamp specifies the start time to which the request was restricted.
* @property {clouderrorreporting(v1beta1).ErrorEvent[]} errorEvents The error events which match the given request.
* @property {string} nextPageToken If non-empty, more results are available.
Pass this token, along with the same query parameters as the first
request, to view the next page of results.
*/
/**
* @typedef TimedCount
* @memberOf! clouderrorreporting(v1beta1)
* @type object
* @property {string} endTime End of the time period to which `count` refers (excluded).
* @property {string} count Approximate number of occurrences in the given time period.
* @property {string} startTime Start of the time period to which `count` refers (included).
*/
/**
* @typedef ErrorGroup
* @memberOf! clouderrorreporting(v1beta1)
* @type object
* @property {string} name The group resource name.
Example: <code>projects/my-project-123/groups/my-groupid</code>
* @property {string} groupId Group IDs are unique for a given project. If the same kind of error
occurs in different service contexts, it will receive the same group ID.
* @property {clouderrorreporting(v1beta1).TrackingIssue[]} trackingIssues Associated tracking issues.
*/
/**
* @typedef ServiceContext
* @memberOf! clouderrorreporting(v1beta1)
* @type object
* @property {string} resourceType Type of the MonitoredResource. List of possible values:
https://cloud.google.com/monitoring/api/resources
Value is set automatically for incoming errors and must not be set when
reporting errors.
* @property {string} version Represents the source code version that the developer provided,
which could represent a version label or a Git SHA-1 hash, for example.
For App Engine standard environment, the version is set to the version of
the app.
* @property {string} service An identifier of the service, such as the name of the
executable, job, or Google App Engine service name. This field is expected
to have a low number of values that are relatively stable over time, as
opposed to `version`, which can be changed whenever new code is deployed.
Contains the service name for error reports extracted from Google
App Engine logs or `default` if the App Engine default service is used.
*/
/**
* @typedef SourceLocation
* @memberOf! clouderrorreporting(v1beta1)
* @type object
* @property {string} functionName Human-readable name of a function or method.
The value can include optional context like the class or package name.
For example, `my.package.MyClass.method` in case of Java.
* @property {string} filePath The source code filename, which can include a truncated relative
path, or a full path from a production machine.
* @property {integer} lineNumber 1-based. 0 indicates that the line number is unknown.
*/
/**
* @typedef ReportErrorEventResponse
* @memberOf! clouderrorreporting(v1beta1)
* @type object
*/
/**
* @typedef HttpRequestContext
* @memberOf! clouderrorreporting(v1beta1)
* @type object
* @property {string} remoteIp The IP address from which the request originated.
This can be IPv4, IPv6, or a token which is derived from the
IP address, depending on the data that has been provided
in the error report.
* @property {string} referrer The referrer information that is provided with the request.
* @property {string} userAgent The user agent information that is provided with the request.
* @property {string} url The URL of the request.
* @property {integer} responseStatusCode The HTTP response status code for the request.
* @property {string} method The type of HTTP request, such as `GET`, `POST`, etc.
*/
/**
* @typedef ListGroupStatsResponse
* @memberOf! clouderrorreporting(v1beta1)
* @type object
* @property {string} timeRangeBegin The timestamp specifies the start time to which the request was restricted.
The start time is set based on the requested time range. It may be adjusted
to a later time if a project has exceeded the storage quota and older data
has been deleted.
* @property {clouderrorreporting(v1beta1).ErrorGroupStats[]} errorGroupStats The error group stats which match the given request.
* @property {string} nextPageToken If non-empty, more results are available.
Pass this token, along with the same query parameters as the first
request, to view the next page of results.
*/
/**
* @typedef DeleteEventsResponse
* @memberOf! clouderrorreporting(v1beta1)
* @type object
*/
/**
* @typedef ErrorEvent
* @memberOf! clouderrorreporting(v1beta1)
* @type object
* @property {clouderrorreporting(v1beta1).ErrorContext} context Data about the context in which the error occurred.
* @property {string} message The stack trace that was reported or logged by the service.
* @property {clouderrorreporting(v1beta1).ServiceContext} serviceContext The `ServiceContext` for which this error was reported.
* @property {string} eventTime Time when the event occurred as provided in the error report.
If the report did not contain a timestamp, the time the error was received
by the Error Reporting system is used.
*/
/**
* @typedef ReportedErrorEvent
* @memberOf! clouderrorreporting(v1beta1)
* @type object
* @property {clouderrorreporting(v1beta1).ErrorContext} context [Optional] A description of the context in which the error occurred.
* @property {string} message [Required] The error message.
If no `context.reportLocation` is provided, the message must contain a
header (typically consisting of the exception type name and an error
message) and an exception stack trace in one of the supported programming
languages and formats.
Supported languages are Java, Python, JavaScript, Ruby, C#, PHP, and Go.
Supported stack trace formats are:
* **Java**: Must be the return value of [`Throwable.printStackTrace()`](https://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html#printStackTrace%28%29).
* **Python**: Must be the return value of [`traceback.format_exc()`](https://docs.python.org/2/library/traceback.html#traceback.format_exc).
* **JavaScript**: Must be the value of [`error.stack`](https://github.com/v8/v8/wiki/Stack-Trace-API)
as returned by V8.
* **Ruby**: Must contain frames returned by [`Exception.backtrace`](https://ruby-doc.org/core-2.2.0/Exception.html#method-i-backtrace).
* **C#**: Must be the return value of [`Exception.ToString()`](https://msdn.microsoft.com/en-us/library/system.exception.tostring.aspx).
* **PHP**: Must start with `PHP (Notice|Parse error|Fatal error|Warning)`
and contain the result of [`(string)$exception`](http://php.net/manual/en/exception.tostring.php).
* **Go**: Must be the return value of [`runtime.Stack()`](https://golang.org/pkg/runtime/debug/#Stack).
* @property {clouderrorreporting(v1beta1).ServiceContext} serviceContext [Required] The service context in which this error has occurred.
* @property {string} eventTime [Optional] Time when the event occurred.
If not provided, the time when the event was received by the
Error Reporting system will be used.
*/
module.exports = Clouderrorreporting;
|
| File | Statements | Branches | Functions | Lines | |||||
|---|---|---|---|---|---|---|---|---|---|
| v1beta2.js | 7.14% | (4 / 56) | 0% | (0 / 34) | 0% | (0 / 9) | 7.14% | (4 / 56) |
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* Google Cloud Functions API
*
* API for managing lightweight user-provided functions executed in response to events.
*
* @example
* var google = require('googleapis');
* var cloudfunctions = google.cloudfunctions('v1beta2');
*
* @namespace cloudfunctions
* @type {Function}
* @version v1beta2
* @variation v1beta2
* @param {object=} options Options for Cloudfunctions
*/
function Cloudfunctions(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.operations = {
/**
* cloudfunctions.operations.get
*
* @desc Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.
*
* @alias cloudfunctions.operations.get
* @memberOf! cloudfunctions(v1beta2)
*
* @param {object} params Parameters for request
* @param {string} params.name The name of the operation resource.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://cloudfunctions.googleapis.com/v1beta2/{name}',
method: 'GET'
}, options),
params: params,
requiredParams: ['name'],
pathParams: ['name'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.projects = {
locations: {
/**
* cloudfunctions.projects.locations.list
*
* @desc Lists information about the supported locations for this service.
*
* @alias cloudfunctions.projects.locations.list
* @memberOf! cloudfunctions(v1beta2)
*
* @param {object} params Parameters for request
* @param {string} params.name The resource that owns the locations collection, if applicable.
* @param {string=} params.pageToken The standard list page token.
* @param {integer=} params.pageSize The standard list page size.
* @param {string=} params.filter The standard list filter.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://cloudfunctions.googleapis.com/v1beta2/{name}/locations',
method: 'GET'
}, options),
params: params,
requiredParams: ['name'],
pathParams: ['name'],
context: self
};
return createAPIRequest(parameters, callback);
},
functions: {
/**
* cloudfunctions.projects.locations.functions.get
*
* @desc Returns a function with the given name from the requested project.
*
* @alias cloudfunctions.projects.locations.functions.get
* @memberOf! cloudfunctions(v1beta2)
*
* @param {object} params Parameters for request
* @param {string} params.name The name of the function which details should be obtained.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://cloudfunctions.googleapis.com/v1beta2/{name}',
method: 'GET'
}, options),
params: params,
requiredParams: ['name'],
pathParams: ['name'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* cloudfunctions.projects.locations.functions.update
*
* @desc Updates existing function.
*
* @alias cloudfunctions.projects.locations.functions.update
* @memberOf! cloudfunctions(v1beta2)
*
* @param {object} params Parameters for request
* @param {string} params.name The name of the function to be updated.
* @param {cloudfunctions(v1beta2).CloudFunction} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://cloudfunctions.googleapis.com/v1beta2/{name}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['name'],
pathParams: ['name'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* cloudfunctions.projects.locations.functions.delete
*
* @desc Deletes a function with the given name from the specified project. If the given function is used by some trigger, the trigger will be updated to remove this function.
*
* @alias cloudfunctions.projects.locations.functions.delete
* @memberOf! cloudfunctions(v1beta2)
*
* @param {object} params Parameters for request
* @param {string} params.name The name of the function which should be deleted.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://cloudfunctions.googleapis.com/v1beta2/{name}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['name'],
pathParams: ['name'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* cloudfunctions.projects.locations.functions.list
*
* @desc Returns a list of functions that belong to the requested project.
*
* @alias cloudfunctions.projects.locations.functions.list
* @memberOf! cloudfunctions(v1beta2)
*
* @param {object} params Parameters for request
* @param {string} params.location The project and location from which the function should be listed, specified in the format `projects/x/locations/x` If you want to list functions in all locations, use "-" in place of a location.
* @param {string=} params.pageToken The value returned by the last `ListFunctionsResponse`; indicates that this is a continuation of a prior `ListFunctions` call, and that the system should return the next page of data.
* @param {integer=} params.pageSize Maximum number of functions to return per call.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://cloudfunctions.googleapis.com/v1beta2/{location}/functions',
method: 'GET'
}, options),
params: params,
requiredParams: ['location'],
pathParams: ['location'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* cloudfunctions.projects.locations.functions.call
*
* @desc Invokes synchronously deployed function. To be used for testing, very limited traffic allowed.
*
* @alias cloudfunctions.projects.locations.functions.call
* @memberOf! cloudfunctions(v1beta2)
*
* @param {object} params Parameters for request
* @param {string} params.name The name of the function to be called.
* @param {cloudfunctions(v1beta2).CallFunctionRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
call: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://cloudfunctions.googleapis.com/v1beta2/{name}:call',
method: 'POST'
}, options),
params: params,
requiredParams: ['name'],
pathParams: ['name'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* cloudfunctions.projects.locations.functions.create
*
* @desc Creates a new function. If a function with the given name already exists in the specified project, the long running operation will return `ALREADY_EXISTS` error.
*
* @alias cloudfunctions.projects.locations.functions.create
* @memberOf! cloudfunctions(v1beta2)
*
* @param {object} params Parameters for request
* @param {string} params.location The project and location in which the function should be created, specified in the format `projects/x/locations/x`
* @param {cloudfunctions(v1beta2).CloudFunction} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
create: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://cloudfunctions.googleapis.com/v1beta2/{location}/functions',
method: 'POST'
}, options),
params: params,
requiredParams: ['location'],
pathParams: ['location'],
context: self
};
return createAPIRequest(parameters, callback);
}
}
}
};
}
/**
* @typedef Operation
* @memberOf! cloudfunctions(v1beta2)
* @type object
* @property {object} response The normal response of the operation in case of success. If the original
method returns no data on success, such as `Delete`, the response is
`google.protobuf.Empty`. If the original method is standard
`Get`/`Create`/`Update`, the response should be the resource. For other
methods, the response should have the type `XxxResponse`, where `Xxx`
is the original method name. For example, if the original method name
is `TakeSnapshot()`, the inferred response type is
`TakeSnapshotResponse`.
* @property {string} name The server-assigned name, which is only unique within the same service that
originally returns it. If you use the default HTTP mapping, the
`name` should have the format of `operations/some/unique/name`.
* @property {cloudfunctions(v1beta2).Status} error The error result of the operation in case of failure or cancellation.
* @property {object} metadata Service-specific metadata associated with the operation. It typically
contains progress information and common metadata such as create time.
Some services might not provide such metadata. Any method that returns a
long-running operation should document the metadata type, if any.
* @property {boolean} done If the value is `false`, it means the operation is still in progress.
If true, the operation is completed, and either `error` or `response` is
available.
*/
/**
* @typedef OperationMetadataV1Beta2
* @memberOf! cloudfunctions(v1beta2)
* @type object
* @property {string} target Target of the operation - for example
projects/project-1/locations/region-1/functions/function-1
* @property {object} request The original request that started the operation.
* @property {string} type Type of operation.
*/
/**
* @typedef Status
* @memberOf! cloudfunctions(v1beta2)
* @type object
* @property {integer} code The status code, which should be an enum value of google.rpc.Code.
* @property {string} message A developer-facing error message, which should be in English. Any
user-facing error message should be localized and sent in the
google.rpc.Status.details field, or localized by the client.
* @property {object[]} details A list of messages that carry the error details. There will be a
common set of message types for APIs to use.
*/
/**
* @typedef CallFunctionRequest
* @memberOf! cloudfunctions(v1beta2)
* @type object
* @property {string} data Input to be passed to the function.
*/
/**
* @typedef SourceRepository
* @memberOf! cloudfunctions(v1beta2)
* @type object
* @property {string} repositoryUrl URL to the hosted repository where the function is defined. Only paths in
https://source.developers.google.com domain are supported. The path should
contain the name of the repository.
* @property {string} tag The name of the tag that captures the state of the repository from
which the function should be fetched.
* @property {string} branch The name of the branch from which the function should be fetched.
* @property {string} sourcePath The path within the repository where the function is defined. The path
should point to the directory where Cloud Functions files are located. Use
"/" if the function is defined directly in the root directory of a
repository.
* @property {string} deployedRevision Output only. The id of the revision that was resolved at the moment of
function creation or update. For example when a user deployed from a
branch, it will be the revision id of the latest change on this branch at
that time. If user deployed from revision then this value will be always
equal to the revision specified by the user.
* @property {string} revision The id of the revision that captures the state of the repository from
which the function should be fetched.
*/
/**
* @typedef CloudFunction
* @memberOf! cloudfunctions(v1beta2)
* @type object
* @property {string} updateTime Output only. The last update timestamp of a Cloud Function.
* @property {string} latestOperation Output only. Name of the most recent operation modifying the function. If
the function status is `DEPLOYING` or `DELETING`, then it points to the
active operation.
* @property {cloudfunctions(v1beta2).HTTPSTrigger} httpsTrigger An HTTPS endpoint type of source that can be triggered via URL.
* @property {cloudfunctions(v1beta2).EventTrigger} eventTrigger A source that fires events in response to a condition in another service.
* @property {string} status Output only. Status of the function deployment.
* @property {string} timeout The function execution timeout. Execution is considered failed and
can be terminated if the function is not completed at the end of the
timeout period. Defaults to 60 seconds.
* @property {integer} availableMemoryMb The amount of memory in MB available for a function.
Defaults to 256MB.
* @property {string} name A user-defined name of the function. Function names must be unique
globally and match pattern `projects/x/locations/x/functions/x
* @property {string} serviceAccount Output only. The service account of the function.
* @property {string} sourceArchiveUrl The URL, starting with gs://, pointing to the zip archive which contains
the function.
* @property {cloudfunctions(v1beta2).SourceRepository} sourceRepository The hosted repository where the function is defined.
* @property {string} entryPoint The name of the function (as defined in source code) that will be
executed. Defaults to the resource name suffix, if not specified. For
backward compatibility, if function with given name is not found, then the
system will try to use function named "function".
For Node.js this is name of a function exported by the module specified
in `source_location`.
*/
/**
* @typedef Location
* @memberOf! cloudfunctions(v1beta2)
* @type object
* @property {object} metadata Service-specific metadata. For example the available capacity at the given
location.
* @property {object} labels Cross-service attributes for the location. For example
{"cloud.googleapis.com/region": "us-east1"}
* @property {string} name Resource name for the location, which may vary between implementations.
For example: `"projects/example-project/locations/us-east1"`
* @property {string} locationId The canonical id for this location. For example: `"us-east1"`.
*/
/**
* @typedef ListFunctionsResponse
* @memberOf! cloudfunctions(v1beta2)
* @type object
* @property {string} nextPageToken If not empty, indicates that there may be more functions that match
the request; this value should be passed in a new
google.cloud.functions.v1beta2.ListFunctionsRequest
to get more functions.
* @property {cloudfunctions(v1beta2).CloudFunction[]} functions The functions that match the request.
*/
/**
* @typedef CallFunctionResponse
* @memberOf! cloudfunctions(v1beta2)
* @type object
* @property {string} executionId Execution id of function invocation.
* @property {string} result Result populated for successful execution of synchronous function. Will
not be populated if function does not return a result through context.
* @property {string} error Either system or user-function generated error. Set if execution
was not successful.
*/
/**
* @typedef ListLocationsResponse
* @memberOf! cloudfunctions(v1beta2)
* @type object
* @property {string} nextPageToken The standard List next-page token.
* @property {cloudfunctions(v1beta2).Location[]} locations A list of locations that matches the specified filter in the request.
*/
/**
* @typedef EventTrigger
* @memberOf! cloudfunctions(v1beta2)
* @type object
* @property {string} resource Which instance of the source's service should send events. E.g. for Pub/Sub
this would be a Pub/Sub topic at `projects/x/topics/x. For Google Cloud
Storage this would be a bucket at `projects/x/buckets/x. For any source
that only supports one instance per-project, this should be the name of the
project (`projects/x)
* @property {string} eventType `event_type` names contain the service that is sending an event and the
kind of event that was fired. Must be of the form
`providers/x/eventTypes/x e.g. Directly handle a Message published to
Google Cloud Pub/Sub `providers/cloud.pubsub/eventTypes/topic.publish`
Handle an object changing in Google Cloud Storage
`providers/cloud.storage/eventTypes/object.change`
Handle a write to the Firebase Realtime Database
`providers/firebase.database/eventTypes/data.write`
*/
/**
* @typedef HTTPSTrigger
* @memberOf! cloudfunctions(v1beta2)
* @type object
* @property {string} url Output only. The deployed url for the function.
*/
module.exports = Cloudfunctions;
|
| File | Statements | Branches | Functions | Lines | |||||
|---|---|---|---|---|---|---|---|---|---|
| v2beta2.js | 8.89% | (4 / 45) | 0% | (0 / 26) | 0% | (0 / 7) | 8.89% | (4 / 45) |
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* Cloud Monitoring API
*
* Accesses Google Cloud Monitoring data.
*
* @example
* var google = require('googleapis');
* var cloudmonitoring = google.cloudmonitoring('v2beta2');
*
* @namespace cloudmonitoring
* @type {Function}
* @version v2beta2
* @variation v2beta2
* @param {object=} options Options for Cloudmonitoring
*/
function Cloudmonitoring(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.metricDescriptors = {
/**
* cloudmonitoring.metricDescriptors.create
*
* @desc Create a new metric.
*
* @alias cloudmonitoring.metricDescriptors.create
* @memberOf! cloudmonitoring(v2beta2)
*
* @param {object} params Parameters for request
* @param {string} params.project The project id. The value can be the numeric project ID or string-based project name.
* @param {cloudmonitoring(v2beta2).MetricDescriptor} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
create: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/cloudmonitoring/v2beta2/projects/{project}/metricDescriptors',
method: 'POST'
}, options),
params: params,
requiredParams: ['project'],
pathParams: ['project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* cloudmonitoring.metricDescriptors.delete
*
* @desc Delete an existing metric.
*
* @alias cloudmonitoring.metricDescriptors.delete
* @memberOf! cloudmonitoring(v2beta2)
*
* @param {object} params Parameters for request
* @param {string} params.metric Name of the metric.
* @param {string} params.project The project ID to which the metric belongs.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/cloudmonitoring/v2beta2/projects/{project}/metricDescriptors/{metric}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['project', 'metric'],
pathParams: ['metric', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* cloudmonitoring.metricDescriptors.list
*
* @desc List metric descriptors that match the query. If the query is not set, then all of the metric descriptors will be returned. Large responses will be paginated, use the nextPageToken returned in the response to request subsequent pages of results by setting the pageToken query parameter to the value of the nextPageToken.
*
* @alias cloudmonitoring.metricDescriptors.list
* @memberOf! cloudmonitoring(v2beta2)
*
* @param {object} params Parameters for request
* @param {integer=} params.count Maximum number of metric descriptors per page. Used for pagination. If not specified, count = 100.
* @param {string=} params.pageToken The pagination token, which is used to page through large result sets. Set this value to the value of the nextPageToken to retrieve the next page of results.
* @param {string} params.project The project id. The value can be the numeric project ID or string-based project name.
* @param {string=} params.query The query used to search against existing metrics. Separate keywords with a space; the service joins all keywords with AND, meaning that all keywords must match for a metric to be returned. If this field is omitted, all metrics are returned. If an empty string is passed with this field, no metrics are returned.
* @param {cloudmonitoring(v2beta2).ListMetricDescriptorsRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/cloudmonitoring/v2beta2/projects/{project}/metricDescriptors',
method: 'GET'
}, options),
params: params,
requiredParams: ['project'],
pathParams: ['project'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.timeseries = {
/**
* cloudmonitoring.timeseries.list
*
* @desc List the data points of the time series that match the metric and labels values and that have data points in the interval. Large responses are paginated; use the nextPageToken returned in the response to request subsequent pages of results by setting the pageToken query parameter to the value of the nextPageToken.
*
* @alias cloudmonitoring.timeseries.list
* @memberOf! cloudmonitoring(v2beta2)
*
* @param {object} params Parameters for request
* @param {string=} params.aggregator The aggregation function that will reduce the data points in each window to a single point. This parameter is only valid for non-cumulative metrics with a value type of INT64 or DOUBLE.
* @param {integer=} params.count Maximum number of data points per page, which is used for pagination of results.
* @param {string=} params.labels A collection of labels for the matching time series, which are represented as: - key==value: key equals the value - key=~value: key regex matches the value - key!=value: key does not equal the value - key!~value: key regex does not match the value For example, to list all of the time series descriptors for the region us-central1, you could specify: label=cloud.googleapis.com%2Flocation=~us-central1.*
* @param {string} params.metric Metric names are protocol-free URLs as listed in the Supported Metrics page. For example, compute.googleapis.com/instance/disk/read_ops_count.
* @param {string=} params.oldest Start of the time interval (exclusive), which is expressed as an RFC 3339 timestamp. If neither oldest nor timespan is specified, the default time interval will be (youngest - 4 hours, youngest]
* @param {string=} params.pageToken The pagination token, which is used to page through large result sets. Set this value to the value of the nextPageToken to retrieve the next page of results.
* @param {string} params.project The project ID to which this time series belongs. The value can be the numeric project ID or string-based project name.
* @param {string=} params.timespan Length of the time interval to query, which is an alternative way to declare the interval: (youngest - timespan, youngest]. The timespan and oldest parameters should not be used together. Units: - s: second - m: minute - h: hour - d: day - w: week Examples: 2s, 3m, 4w. Only one unit is allowed, for example: 2w3d is not allowed; you should use 17d instead. If neither oldest nor timespan is specified, the default time interval will be (youngest - 4 hours, youngest].
* @param {string=} params.window The sampling window. At most one data point will be returned for each window in the requested time interval. This parameter is only valid for non-cumulative metric types. Units: - m: minute - h: hour - d: day - w: week Examples: 3m, 4w. Only one unit is allowed, for example: 2w3d is not allowed; you should use 17d instead.
* @param {string} params.youngest End of the time interval (inclusive), which is expressed as an RFC 3339 timestamp.
* @param {cloudmonitoring(v2beta2).ListTimeseriesRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/cloudmonitoring/v2beta2/projects/{project}/timeseries/{metric}',
method: 'GET'
}, options),
params: params,
requiredParams: ['project', 'metric', 'youngest'],
pathParams: ['metric', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* cloudmonitoring.timeseries.write
*
* @desc Put data points to one or more time series for one or more metrics. If a time series does not exist, a new time series will be created. It is not allowed to write a time series point that is older than the existing youngest point of that time series. Points that are older than the existing youngest point of that time series will be discarded silently. Therefore, users should make sure that points of a time series are written sequentially in the order of their end time.
*
* @alias cloudmonitoring.timeseries.write
* @memberOf! cloudmonitoring(v2beta2)
*
* @param {object} params Parameters for request
* @param {string} params.project The project ID. The value can be the numeric project ID or string-based project name.
* @param {cloudmonitoring(v2beta2).WriteTimeseriesRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
write: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/cloudmonitoring/v2beta2/projects/{project}/timeseries:write',
method: 'POST'
}, options),
params: params,
requiredParams: ['project'],
pathParams: ['project'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.timeseriesDescriptors = {
/**
* cloudmonitoring.timeseriesDescriptors.list
*
* @desc List the descriptors of the time series that match the metric and labels values and that have data points in the interval. Large responses are paginated; use the nextPageToken returned in the response to request subsequent pages of results by setting the pageToken query parameter to the value of the nextPageToken.
*
* @alias cloudmonitoring.timeseriesDescriptors.list
* @memberOf! cloudmonitoring(v2beta2)
*
* @param {object} params Parameters for request
* @param {string=} params.aggregator The aggregation function that will reduce the data points in each window to a single point. This parameter is only valid for non-cumulative metrics with a value type of INT64 or DOUBLE.
* @param {integer=} params.count Maximum number of time series descriptors per page. Used for pagination. If not specified, count = 100.
* @param {string=} params.labels A collection of labels for the matching time series, which are represented as: - key==value: key equals the value - key=~value: key regex matches the value - key!=value: key does not equal the value - key!~value: key regex does not match the value For example, to list all of the time series descriptors for the region us-central1, you could specify: label=cloud.googleapis.com%2Flocation=~us-central1.*
* @param {string} params.metric Metric names are protocol-free URLs as listed in the Supported Metrics page. For example, compute.googleapis.com/instance/disk/read_ops_count.
* @param {string=} params.oldest Start of the time interval (exclusive), which is expressed as an RFC 3339 timestamp. If neither oldest nor timespan is specified, the default time interval will be (youngest - 4 hours, youngest]
* @param {string=} params.pageToken The pagination token, which is used to page through large result sets. Set this value to the value of the nextPageToken to retrieve the next page of results.
* @param {string} params.project The project ID to which this time series belongs. The value can be the numeric project ID or string-based project name.
* @param {string=} params.timespan Length of the time interval to query, which is an alternative way to declare the interval: (youngest - timespan, youngest]. The timespan and oldest parameters should not be used together. Units: - s: second - m: minute - h: hour - d: day - w: week Examples: 2s, 3m, 4w. Only one unit is allowed, for example: 2w3d is not allowed; you should use 17d instead. If neither oldest nor timespan is specified, the default time interval will be (youngest - 4 hours, youngest].
* @param {string=} params.window The sampling window. At most one data point will be returned for each window in the requested time interval. This parameter is only valid for non-cumulative metric types. Units: - m: minute - h: hour - d: day - w: week Examples: 3m, 4w. Only one unit is allowed, for example: 2w3d is not allowed; you should use 17d instead.
* @param {string} params.youngest End of the time interval (inclusive), which is expressed as an RFC 3339 timestamp.
* @param {cloudmonitoring(v2beta2).ListTimeseriesDescriptorsRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/cloudmonitoring/v2beta2/projects/{project}/timeseriesDescriptors/{metric}',
method: 'GET'
}, options),
params: params,
requiredParams: ['project', 'metric', 'youngest'],
pathParams: ['metric', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
}
/**
* @typedef DeleteMetricDescriptorResponse
* @memberOf! cloudmonitoring(v2beta2)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "cloudmonitoring#deleteMetricDescriptorResponse".
*/
/**
* @typedef ListMetricDescriptorsRequest
* @memberOf! cloudmonitoring(v2beta2)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "cloudmonitoring#listMetricDescriptorsRequest".
*/
/**
* @typedef ListMetricDescriptorsResponse
* @memberOf! cloudmonitoring(v2beta2)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "cloudmonitoring#listMetricDescriptorsResponse".
* @property {cloudmonitoring(v2beta2).MetricDescriptor[]} metrics The returned metric descriptors.
* @property {string} nextPageToken Pagination token. If present, indicates that additional results are available for retrieval. To access the results past the pagination limit, pass this value to the pageToken query parameter.
*/
/**
* @typedef ListTimeseriesDescriptorsRequest
* @memberOf! cloudmonitoring(v2beta2)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "cloudmonitoring#listTimeseriesDescriptorsRequest".
*/
/**
* @typedef ListTimeseriesDescriptorsResponse
* @memberOf! cloudmonitoring(v2beta2)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "cloudmonitoring#listTimeseriesDescriptorsResponse".
* @property {string} nextPageToken Pagination token. If present, indicates that additional results are available for retrieval. To access the results past the pagination limit, set this value to the pageToken query parameter.
* @property {string} oldest The oldest timestamp of the interval of this query, as an RFC 3339 string.
* @property {cloudmonitoring(v2beta2).TimeseriesDescriptor[]} timeseries The returned time series descriptors.
* @property {string} youngest The youngest timestamp of the interval of this query, as an RFC 3339 string.
*/
/**
* @typedef ListTimeseriesRequest
* @memberOf! cloudmonitoring(v2beta2)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "cloudmonitoring#listTimeseriesRequest".
*/
/**
* @typedef ListTimeseriesResponse
* @memberOf! cloudmonitoring(v2beta2)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "cloudmonitoring#listTimeseriesResponse".
* @property {string} nextPageToken Pagination token. If present, indicates that additional results are available for retrieval. To access the results past the pagination limit, set the pageToken query parameter to this value. All of the points of a time series will be returned before returning any point of the subsequent time series.
* @property {string} oldest The oldest timestamp of the interval of this query as an RFC 3339 string.
* @property {cloudmonitoring(v2beta2).Timeseries[]} timeseries The returned time series.
* @property {string} youngest The youngest timestamp of the interval of this query as an RFC 3339 string.
*/
/**
* @typedef MetricDescriptor
* @memberOf! cloudmonitoring(v2beta2)
* @type object
* @property {string} description Description of this metric.
* @property {cloudmonitoring(v2beta2).MetricDescriptorLabelDescriptor[]} labels Labels defined for this metric.
* @property {string} name The name of this metric.
* @property {string} project The project ID to which the metric belongs.
* @property {cloudmonitoring(v2beta2).MetricDescriptorTypeDescriptor} typeDescriptor Type description for this metric.
*/
/**
* @typedef MetricDescriptorLabelDescriptor
* @memberOf! cloudmonitoring(v2beta2)
* @type object
* @property {string} description Label description.
* @property {string} key Label key.
*/
/**
* @typedef MetricDescriptorTypeDescriptor
* @memberOf! cloudmonitoring(v2beta2)
* @type object
* @property {string} metricType The method of collecting data for the metric. See Metric types.
* @property {string} valueType The data type of of individual points in the metric's time series. See Metric value types.
*/
/**
* @typedef Point
* @memberOf! cloudmonitoring(v2beta2)
* @type object
* @property {boolean} boolValue The value of this data point. Either "true" or "false".
* @property {cloudmonitoring(v2beta2).PointDistribution} distributionValue The value of this data point as a distribution. A distribution value can contain a list of buckets and/or an underflowBucket and an overflowBucket. The values of these points can be used to create a histogram.
* @property {number} doubleValue The value of this data point as a double-precision floating-point number.
* @property {string} end The interval [start, end] is the time period to which the point's value applies. For gauge metrics, whose values are instantaneous measurements, this interval should be empty (start should equal end). For cumulative metrics (of which deltas and rates are special cases), the interval should be non-empty. Both start and end are RFC 3339 strings.
* @property {string} int64Value The value of this data point as a 64-bit integer.
* @property {string} start The interval [start, end] is the time period to which the point's value applies. For gauge metrics, whose values are instantaneous measurements, this interval should be empty (start should equal end). For cumulative metrics (of which deltas and rates are special cases), the interval should be non-empty. Both start and end are RFC 3339 strings.
* @property {string} stringValue The value of this data point in string format.
*/
/**
* @typedef PointDistribution
* @memberOf! cloudmonitoring(v2beta2)
* @type object
* @property {cloudmonitoring(v2beta2).PointDistributionBucket[]} buckets The finite buckets.
* @property {cloudmonitoring(v2beta2).PointDistributionOverflowBucket} overflowBucket The overflow bucket.
* @property {cloudmonitoring(v2beta2).PointDistributionUnderflowBucket} underflowBucket The underflow bucket.
*/
/**
* @typedef PointDistributionBucket
* @memberOf! cloudmonitoring(v2beta2)
* @type object
* @property {string} count The number of events whose values are in the interval defined by this bucket.
* @property {number} lowerBound The lower bound of the value interval of this bucket (inclusive).
* @property {number} upperBound The upper bound of the value interval of this bucket (exclusive).
*/
/**
* @typedef PointDistributionOverflowBucket
* @memberOf! cloudmonitoring(v2beta2)
* @type object
* @property {string} count The number of events whose values are in the interval defined by this bucket.
* @property {number} lowerBound The lower bound of the value interval of this bucket (inclusive).
*/
/**
* @typedef PointDistributionUnderflowBucket
* @memberOf! cloudmonitoring(v2beta2)
* @type object
* @property {string} count The number of events whose values are in the interval defined by this bucket.
* @property {number} upperBound The upper bound of the value interval of this bucket (exclusive).
*/
/**
* @typedef Timeseries
* @memberOf! cloudmonitoring(v2beta2)
* @type object
* @property {cloudmonitoring(v2beta2).Point[]} points The data points of this time series. The points are listed in order of their end timestamp, from younger to older.
* @property {cloudmonitoring(v2beta2).TimeseriesDescriptor} timeseriesDesc The descriptor of this time series.
*/
/**
* @typedef TimeseriesDescriptor
* @memberOf! cloudmonitoring(v2beta2)
* @type object
* @property {object} labels The label's name.
* @property {string} metric The name of the metric.
* @property {string} project The Developers Console project number to which this time series belongs.
*/
/**
* @typedef TimeseriesDescriptorLabel
* @memberOf! cloudmonitoring(v2beta2)
* @type object
* @property {string} key The label's name.
* @property {string} value The label's value.
*/
/**
* @typedef TimeseriesPoint
* @memberOf! cloudmonitoring(v2beta2)
* @type object
* @property {cloudmonitoring(v2beta2).Point} point The data point in this time series snapshot.
* @property {cloudmonitoring(v2beta2).TimeseriesDescriptor} timeseriesDesc The descriptor of this time series.
*/
/**
* @typedef WriteTimeseriesRequest
* @memberOf! cloudmonitoring(v2beta2)
* @type object
* @property {object} commonLabels The label's name.
* @property {cloudmonitoring(v2beta2).TimeseriesPoint[]} timeseries Provide time series specific labels and the data points for each time series. The labels in timeseries and the common_labels should form a complete list of labels that required by the metric.
*/
/**
* @typedef WriteTimeseriesResponse
* @memberOf! cloudmonitoring(v2beta2)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "cloudmonitoring#writeTimeseriesResponse".
*/
module.exports = Cloudmonitoring;
|
| File | Statements | Branches | Functions | Lines | |||||
|---|---|---|---|---|---|---|---|---|---|
| alpha.js | 2.7% | (4 / 148) | 0% | (0 / 94) | 0% | (0 / 24) | 2.7% | (4 / 148) | |
| beta.js | 3.57% | (4 / 112) | 0% | (0 / 70) | 0% | (0 / 18) | 3.57% | (4 / 112) | |
| vm_alpha.js | 2.7% | (4 / 148) | 0% | (0 / 94) | 0% | (0 / 24) | 2.7% | (4 / 148) | |
| vm_beta.js | 3.57% | (4 / 112) | 0% | (0 / 70) | 0% | (0 / 18) | 3.57% | (4 / 112) |
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* Cloud User Accounts API
*
* Creates and manages users and groups for accessing Google Compute Engine virtual machines.
*
* @example
* var google = require('googleapis');
* var clouduseraccounts = google.clouduseraccounts('alpha');
*
* @namespace clouduseraccounts
* @type {Function}
* @version alpha
* @variation alpha
* @param {object=} options Options for Clouduseraccounts
*/
function Clouduseraccounts(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.globalAccountsOperations = {
/**
* clouduseraccounts.globalAccountsOperations.delete
*
* @desc Deletes the specified operation resource.
*
* @alias clouduseraccounts.globalAccountsOperations.delete
* @memberOf! clouduseraccounts(alpha)
*
* @param {object} params Parameters for request
* @param {string} params.operation Name of the Operations resource to delete.
* @param {string} params.project Project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/alpha/projects/{project}/global/operations/{operation}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['project', 'operation'],
pathParams: ['operation', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.globalAccountsOperations.get
*
* @desc Retrieves the specified operation resource.
*
* @alias clouduseraccounts.globalAccountsOperations.get
* @memberOf! clouduseraccounts(alpha)
*
* @param {object} params Parameters for request
* @param {string} params.operation Name of the Operations resource to return.
* @param {string} params.project Project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/alpha/projects/{project}/global/operations/{operation}',
method: 'GET'
}, options),
params: params,
requiredParams: ['project', 'operation'],
pathParams: ['operation', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.globalAccountsOperations.list
*
* @desc Retrieves the list of operation resources contained within the specified project.
*
* @alias clouduseraccounts.globalAccountsOperations.list
* @memberOf! clouduseraccounts(alpha)
*
* @param {object} params Parameters for request
* @param {string=} params.filter Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string. The field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field. For example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance. Compute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values. The Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.
* @param {integer=} params.maxResults The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.
* @param {string=} params.orderBy Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using orderBy="creationTimestamp desc". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by name or creationTimestamp desc is supported.
* @param {string=} params.pageToken Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.
* @param {string} params.project Project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/alpha/projects/{project}/global/operations',
method: 'GET'
}, options),
params: params,
requiredParams: ['project'],
pathParams: ['project'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.groups = {
/**
* clouduseraccounts.groups.addMember
*
* @desc Adds users to the specified group.
*
* @alias clouduseraccounts.groups.addMember
* @memberOf! clouduseraccounts(alpha)
*
* @param {object} params Parameters for request
* @param {string} params.groupName Name of the group for this request.
* @param {string} params.project Project ID for this request.
* @param {clouduseraccounts(alpha).GroupsAddMemberRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
addMember: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/alpha/projects/{project}/global/groups/{groupName}/addMember',
method: 'POST'
}, options),
params: params,
requiredParams: ['project', 'groupName'],
pathParams: ['groupName', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.groups.delete
*
* @desc Deletes the specified Group resource.
*
* @alias clouduseraccounts.groups.delete
* @memberOf! clouduseraccounts(alpha)
*
* @param {object} params Parameters for request
* @param {string} params.groupName Name of the Group resource to delete.
* @param {string} params.project Project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/alpha/projects/{project}/global/groups/{groupName}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['project', 'groupName'],
pathParams: ['groupName', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.groups.get
*
* @desc Returns the specified Group resource.
*
* @alias clouduseraccounts.groups.get
* @memberOf! clouduseraccounts(alpha)
*
* @param {object} params Parameters for request
* @param {string} params.groupName Name of the Group resource to return.
* @param {string} params.project Project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/alpha/projects/{project}/global/groups/{groupName}',
method: 'GET'
}, options),
params: params,
requiredParams: ['project', 'groupName'],
pathParams: ['groupName', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.groups.getIamPolicy
*
* @desc Gets the access control policy for a resource. May be empty if no such policy or resource exists.
*
* @alias clouduseraccounts.groups.getIamPolicy
* @memberOf! clouduseraccounts(alpha)
*
* @param {object} params Parameters for request
* @param {string} params.project Project ID for this request.
* @param {string} params.resource_ Name of the resource for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
getIamPolicy: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/alpha/projects/{project}/global/groups/{resource}/getIamPolicy',
method: 'GET'
}, options),
params: params,
requiredParams: ['project', 'resource'],
pathParams: ['project', 'resource'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.groups.insert
*
* @desc Creates a Group resource in the specified project using the data included in the request.
*
* @alias clouduseraccounts.groups.insert
* @memberOf! clouduseraccounts(alpha)
*
* @param {object} params Parameters for request
* @param {string} params.project Project ID for this request.
* @param {clouduseraccounts(alpha).Group} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/alpha/projects/{project}/global/groups',
method: 'POST'
}, options),
params: params,
requiredParams: ['project'],
pathParams: ['project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.groups.list
*
* @desc Retrieves the list of groups contained within the specified project.
*
* @alias clouduseraccounts.groups.list
* @memberOf! clouduseraccounts(alpha)
*
* @param {object} params Parameters for request
* @param {string=} params.filter Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string. The field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field. For example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance. Compute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values. The Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.
* @param {integer=} params.maxResults The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.
* @param {string=} params.orderBy Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using orderBy="creationTimestamp desc". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by name or creationTimestamp desc is supported.
* @param {string=} params.pageToken Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.
* @param {string} params.project Project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/alpha/projects/{project}/global/groups',
method: 'GET'
}, options),
params: params,
requiredParams: ['project'],
pathParams: ['project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.groups.removeMember
*
* @desc Removes users from the specified group.
*
* @alias clouduseraccounts.groups.removeMember
* @memberOf! clouduseraccounts(alpha)
*
* @param {object} params Parameters for request
* @param {string} params.groupName Name of the group for this request.
* @param {string} params.project Project ID for this request.
* @param {clouduseraccounts(alpha).GroupsRemoveMemberRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
removeMember: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/alpha/projects/{project}/global/groups/{groupName}/removeMember',
method: 'POST'
}, options),
params: params,
requiredParams: ['project', 'groupName'],
pathParams: ['groupName', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.groups.setIamPolicy
*
* @desc Sets the access control policy on the specified resource. Replaces any existing policy.
*
* @alias clouduseraccounts.groups.setIamPolicy
* @memberOf! clouduseraccounts(alpha)
*
* @param {object} params Parameters for request
* @param {string} params.project Project ID for this request.
* @param {string} params.resource_ Name of the resource for this request.
* @param {clouduseraccounts(alpha).Policy} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
setIamPolicy: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/alpha/projects/{project}/global/groups/{resource}/setIamPolicy',
method: 'POST'
}, options),
params: params,
requiredParams: ['project', 'resource'],
pathParams: ['project', 'resource'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.groups.testIamPermissions
*
* @desc Returns permissions that a caller has on the specified resource.
*
* @alias clouduseraccounts.groups.testIamPermissions
* @memberOf! clouduseraccounts(alpha)
*
* @param {object} params Parameters for request
* @param {string} params.project Project ID for this request.
* @param {string} params.resource_ Name of the resource for this request.
* @param {clouduseraccounts(alpha).TestPermissionsRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
testIamPermissions: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/alpha/projects/{project}/global/groups/{resource}/testIamPermissions',
method: 'POST'
}, options),
params: params,
requiredParams: ['project', 'resource'],
pathParams: ['project', 'resource'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.linux = {
/**
* clouduseraccounts.linux.getAuthorizedKeysView
*
* @desc Returns a list of authorized public keys for a specific user account.
*
* @alias clouduseraccounts.linux.getAuthorizedKeysView
* @memberOf! clouduseraccounts(alpha)
*
* @param {object} params Parameters for request
* @param {string} params.instance The fully-qualified URL of the virtual machine requesting the view.
* @param {boolean=} params.login Whether the view was requested as part of a user-initiated login.
* @param {string} params.project Project ID for this request.
* @param {string} params.user The user account for which you want to get a list of authorized public keys.
* @param {string} params.zone Name of the zone for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
getAuthorizedKeysView: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/alpha/projects/{project}/zones/{zone}/authorizedKeysView/{user}',
method: 'POST'
}, options),
params: params,
requiredParams: ['project', 'zone', 'user', 'instance'],
pathParams: ['project', 'user', 'zone'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.linux.getLinuxAccountViews
*
* @desc Retrieves a list of user accounts for an instance within a specific project.
*
* @alias clouduseraccounts.linux.getLinuxAccountViews
* @memberOf! clouduseraccounts(alpha)
*
* @param {object} params Parameters for request
* @param {string=} params.filter Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string. The field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field. For example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance. Compute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values. The Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.
* @param {string} params.instance The fully-qualified URL of the virtual machine requesting the views.
* @param {integer=} params.maxResults The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.
* @param {string=} params.orderBy Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using orderBy="creationTimestamp desc". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by name or creationTimestamp desc is supported.
* @param {string=} params.pageToken Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.
* @param {string} params.project Project ID for this request.
* @param {string} params.zone Name of the zone for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
getLinuxAccountViews: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/alpha/projects/{project}/zones/{zone}/linuxAccountViews',
method: 'POST'
}, options),
params: params,
requiredParams: ['project', 'zone', 'instance'],
pathParams: ['project', 'zone'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.users = {
/**
* clouduseraccounts.users.addPublicKey
*
* @desc Adds a public key to the specified User resource with the data included in the request.
*
* @alias clouduseraccounts.users.addPublicKey
* @memberOf! clouduseraccounts(alpha)
*
* @param {object} params Parameters for request
* @param {string} params.project Project ID for this request.
* @param {string} params.user Name of the user for this request.
* @param {clouduseraccounts(alpha).PublicKey} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
addPublicKey: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/alpha/projects/{project}/global/users/{user}/addPublicKey',
method: 'POST'
}, options),
params: params,
requiredParams: ['project', 'user'],
pathParams: ['project', 'user'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.users.delete
*
* @desc Deletes the specified User resource.
*
* @alias clouduseraccounts.users.delete
* @memberOf! clouduseraccounts(alpha)
*
* @param {object} params Parameters for request
* @param {string} params.project Project ID for this request.
* @param {string} params.user Name of the user resource to delete.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/alpha/projects/{project}/global/users/{user}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['project', 'user'],
pathParams: ['project', 'user'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.users.get
*
* @desc Returns the specified User resource.
*
* @alias clouduseraccounts.users.get
* @memberOf! clouduseraccounts(alpha)
*
* @param {object} params Parameters for request
* @param {string} params.project Project ID for this request.
* @param {string} params.user Name of the user resource to return.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/alpha/projects/{project}/global/users/{user}',
method: 'GET'
}, options),
params: params,
requiredParams: ['project', 'user'],
pathParams: ['project', 'user'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.users.getIamPolicy
*
* @desc Gets the access control policy for a resource. May be empty if no such policy or resource exists.
*
* @alias clouduseraccounts.users.getIamPolicy
* @memberOf! clouduseraccounts(alpha)
*
* @param {object} params Parameters for request
* @param {string} params.project Project ID for this request.
* @param {string} params.resource_ Name of the resource for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
getIamPolicy: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/alpha/projects/{project}/global/users/{resource}/getIamPolicy',
method: 'GET'
}, options),
params: params,
requiredParams: ['project', 'resource'],
pathParams: ['project', 'resource'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.users.insert
*
* @desc Creates a User resource in the specified project using the data included in the request.
*
* @alias clouduseraccounts.users.insert
* @memberOf! clouduseraccounts(alpha)
*
* @param {object} params Parameters for request
* @param {string} params.project Project ID for this request.
* @param {clouduseraccounts(alpha).User} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/alpha/projects/{project}/global/users',
method: 'POST'
}, options),
params: params,
requiredParams: ['project'],
pathParams: ['project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.users.list
*
* @desc Retrieves a list of users contained within the specified project.
*
* @alias clouduseraccounts.users.list
* @memberOf! clouduseraccounts(alpha)
*
* @param {object} params Parameters for request
* @param {string=} params.filter Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string. The field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field. For example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance. Compute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values. The Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.
* @param {integer=} params.maxResults The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.
* @param {string=} params.orderBy Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using orderBy="creationTimestamp desc". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by name or creationTimestamp desc is supported.
* @param {string=} params.pageToken Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.
* @param {string} params.project Project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/alpha/projects/{project}/global/users',
method: 'GET'
}, options),
params: params,
requiredParams: ['project'],
pathParams: ['project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.users.removePublicKey
*
* @desc Removes the specified public key from the user.
*
* @alias clouduseraccounts.users.removePublicKey
* @memberOf! clouduseraccounts(alpha)
*
* @param {object} params Parameters for request
* @param {string} params.fingerprint The fingerprint of the public key to delete. Public keys are identified by their fingerprint, which is defined by RFC4716 to be the MD5 digest of the public key.
* @param {string} params.project Project ID for this request.
* @param {string} params.user Name of the user for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
removePublicKey: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/alpha/projects/{project}/global/users/{user}/removePublicKey',
method: 'POST'
}, options),
params: params,
requiredParams: ['project', 'user', 'fingerprint'],
pathParams: ['project', 'user'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.users.setIamPolicy
*
* @desc Sets the access control policy on the specified resource. Replaces any existing policy.
*
* @alias clouduseraccounts.users.setIamPolicy
* @memberOf! clouduseraccounts(alpha)
*
* @param {object} params Parameters for request
* @param {string} params.project Project ID for this request.
* @param {string} params.resource_ Name of the resource for this request.
* @param {clouduseraccounts(alpha).Policy} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
setIamPolicy: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/alpha/projects/{project}/global/users/{resource}/setIamPolicy',
method: 'POST'
}, options),
params: params,
requiredParams: ['project', 'resource'],
pathParams: ['project', 'resource'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.users.testIamPermissions
*
* @desc Returns permissions that a caller has on the specified resource.
*
* @alias clouduseraccounts.users.testIamPermissions
* @memberOf! clouduseraccounts(alpha)
*
* @param {object} params Parameters for request
* @param {string} params.project Project ID for this request.
* @param {string} params.resource_ Name of the resource for this request.
* @param {clouduseraccounts(alpha).TestPermissionsRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
testIamPermissions: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/alpha/projects/{project}/global/users/{resource}/testIamPermissions',
method: 'POST'
}, options),
params: params,
requiredParams: ['project', 'resource'],
pathParams: ['project', 'resource'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
}
/**
* @typedef AuditConfig
* @memberOf! clouduseraccounts(alpha)
* @type object
* @property {string[]} exemptedMembers Specifies the identities that are exempted from "data access" audit logging for the `service` specified above. Follows the same format of Binding.members.
* @property {string} service Specifies a service that will be enabled for "data access" audit logging. For example, `resourcemanager`, `storage`, `compute`. `allServices` is a special value that covers all services.
*/
/**
* @typedef AuthorizedKeysView
* @memberOf! clouduseraccounts(alpha)
* @type object
* @property {string[]} keys [Output Only] The list of authorized public keys in SSH format.
* @property {boolean} sudoer [Output Only] Whether the user has the ability to elevate on the instance that requested the authorized keys.
*/
/**
* @typedef Binding
* @memberOf! clouduseraccounts(alpha)
* @type object
* @property {string[]} members Specifies the identities requesting access for a Cloud Platform resource. `members` can have the following values:
* `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account.
* `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account.
* `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@gmail.com` or `joe@example.com`.
* `serviceAccount:{emailid}`: An email address that represents a service account. For example, `my-other-app@appspot.gserviceaccount.com`.
* `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`.
* `domain:{domain}`: A Google Apps domain name that represents all the users of that domain. For example, `google.com` or `example.com`.
* @property {string} role Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
*/
/**
* @typedef Condition
* @memberOf! clouduseraccounts(alpha)
* @type object
* @property {string} iam Trusted attributes supplied by the IAM system.
* @property {string} op An operator to apply the subject with.
* @property {string} svc Trusted attributes discharged by the service.
* @property {string} sys Trusted attributes supplied by any service that owns resources and uses the IAM system for access control.
* @property {string} value The object of the condition. Exactly one of these must be set.
* @property {string[]} values The objects of the condition. This is mutually exclusive with 'value'.
*/
/**
* @typedef Group
* @memberOf! clouduseraccounts(alpha)
* @type object
* @property {string} creationTimestamp [Output Only] Creation timestamp in RFC3339 text format.
* @property {string} description An optional textual description of the resource; provided by the client when the resource is created.
* @property {string} id [Output Only] Unique identifier for the resource; defined by the server.
* @property {string} kind [Output Only] Type of the resource. Always clouduseraccounts#group for groups.
* @property {string[]} members [Output Only] A list of URLs to User resources who belong to the group. Users may only be members of groups in the same project.
* @property {string} name Name of the resource; provided by the client when the resource is created.
* @property {string} selfLink [Output Only] Server defined URL for the resource.
*/
/**
* @typedef GroupList
* @memberOf! clouduseraccounts(alpha)
* @type object
* @property {string} id [Output Only] Unique identifier for the resource; defined by the server.
* @property {clouduseraccounts(alpha).Group[]} items [Output Only] A list of Group resources.
* @property {string} kind [Output Only] Type of resource. Always clouduseraccounts#groupList for lists of groups.
* @property {string} nextPageToken [Output Only] A token used to continue a truncated list request.
* @property {string} selfLink [Output Only] Server defined URL for this resource.
*/
/**
* @typedef GroupsAddMemberRequest
* @memberOf! clouduseraccounts(alpha)
* @type object
* @property {string[]} users Fully-qualified URLs of the User resources to add.
*/
/**
* @typedef GroupsRemoveMemberRequest
* @memberOf! clouduseraccounts(alpha)
* @type object
* @property {string[]} users Fully-qualified URLs of the User resources to remove.
*/
/**
* @typedef LinuxAccountViews
* @memberOf! clouduseraccounts(alpha)
* @type object
* @property {clouduseraccounts(alpha).LinuxGroupView[]} groupViews [Output Only] A list of all groups within a project.
* @property {string} kind [Output Only] Type of the resource. Always clouduseraccounts#linuxAccountViews for Linux resources.
* @property {clouduseraccounts(alpha).LinuxUserView[]} userViews [Output Only] A list of all users within a project.
*/
/**
* @typedef LinuxGetAuthorizedKeysViewResponse
* @memberOf! clouduseraccounts(alpha)
* @type object
* @property {clouduseraccounts(alpha).AuthorizedKeysView} resource [Output Only] A list of authorized public keys for a user.
*/
/**
* @typedef LinuxGetLinuxAccountViewsResponse
* @memberOf! clouduseraccounts(alpha)
* @type object
* @property {clouduseraccounts(alpha).LinuxAccountViews} resource [Output Only] A list of authorized user accounts and groups.
*/
/**
* @typedef LinuxGroupView
* @memberOf! clouduseraccounts(alpha)
* @type object
* @property {integer} gid [Output Only] The Group ID.
* @property {string} groupName [Output Only] Group name.
* @property {string[]} members [Output Only] List of user accounts that belong to the group.
*/
/**
* @typedef LinuxUserView
* @memberOf! clouduseraccounts(alpha)
* @type object
* @property {string} gecos [Output Only] The GECOS (user information) entry for this account.
* @property {integer} gid [Output Only] User's default group ID.
* @property {string} homeDirectory [Output Only] The path to the home directory for this account.
* @property {string} shell [Output Only] The path to the login shell for this account.
* @property {integer} uid [Output Only] User ID.
* @property {string} username [Output Only] The username of the account.
*/
/**
* @typedef LogConfig
* @memberOf! clouduseraccounts(alpha)
* @type object
* @property {clouduseraccounts(alpha).LogConfigCounterOptions} counter Counter options.
*/
/**
* @typedef LogConfigCounterOptions
* @memberOf! clouduseraccounts(alpha)
* @type object
* @property {string} field The field value to attribute.
* @property {string} metric The metric to update.
*/
/**
* @typedef Operation
* @memberOf! clouduseraccounts(alpha)
* @type object
* @property {string} clientOperationId [Output Only] Reserved for future use.
* @property {string} creationTimestamp [Output Only] Creation timestamp in RFC3339 text format.
* @property {string} description [Output Only] A textual description of the operation, which is set when the operation is created.
* @property {string} endTime [Output Only] The time that this operation was completed. This value is in RFC3339 text format.
* @property {object} error [Output Only] If errors are generated during processing of the operation, this field will be populated.
* @property {string} httpErrorMessage [Output Only] If the operation fails, this field contains the HTTP error message that was returned, such as NOT FOUND.
* @property {integer} httpErrorStatusCode [Output Only] If the operation fails, this field contains the HTTP error status code that was returned. For example, a 404 means the resource was not found.
* @property {string} id [Output Only] The unique identifier for the resource. This identifier is defined by the server.
* @property {string} insertTime [Output Only] The time that this operation was requested. This value is in RFC3339 text format.
* @property {string} kind [Output Only] Type of the resource. Always compute#operation for Operation resources.
* @property {string} name [Output Only] Name of the resource.
* @property {string} operationType [Output Only] The type of operation, such as insert, update, or delete, and so on.
* @property {integer} progress [Output Only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess when the operation will be complete. This number should monotonically increase as the operation progresses.
* @property {string} region [Output Only] The URL of the region where the operation resides. Only available when performing regional operations.
* @property {string} selfLink [Output Only] Server-defined URL for the resource.
* @property {string} startTime [Output Only] The time that this operation was started by the server. This value is in RFC3339 text format.
* @property {string} status [Output Only] The status of the operation, which can be one of the following: PENDING, RUNNING, or DONE.
* @property {string} statusMessage [Output Only] An optional textual description of the current status of the operation.
* @property {string} targetId [Output Only] The unique target ID, which identifies a specific incarnation of the target resource.
* @property {string} targetLink [Output Only] The URL of the resource that the operation modifies.
* @property {string} user [Output Only] User who requested the operation, for example: user@example.com.
* @property {object[]} warnings [Output Only] If warning messages are generated during processing of the operation, this field will be populated.
* @property {string} zone [Output Only] The URL of the zone where the operation resides. Only available when performing per-zone operations.
*/
/**
* @typedef OperationList
* @memberOf! clouduseraccounts(alpha)
* @type object
* @property {string} id [Output Only] The unique identifier for the resource. This identifier is defined by the server.
* @property {clouduseraccounts(alpha).Operation[]} items [Output Only] A list of Operation resources.
* @property {string} kind [Output Only] Type of resource. Always compute#operations for Operations resource.
* @property {string} nextPageToken [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.
* @property {string} selfLink [Output Only] Server-defined URL for this resource.
*/
/**
* @typedef Policy
* @memberOf! clouduseraccounts(alpha)
* @type object
* @property {clouduseraccounts(alpha).AuditConfig[]} auditConfigs Specifies audit logging configs for "data access". "data access": generally refers to data reads/writes and admin reads. "admin activity": generally refers to admin writes.
Note: `AuditConfig` doesn't apply to "admin activity", which always enables audit logging.
* @property {clouduseraccounts(alpha).Binding[]} bindings Associates a list of `members` to a `role`. Multiple `bindings` must not be specified for the same `role`. `bindings` with no members will result in an error.
* @property {string} etag `etag` is used for optimistic concurrency control as a way to help prevent simultaneous updates of a policy from overwriting each other. It is strongly suggested that systems make use of the `etag` in the read-modify-write cycle to perform policy updates in order to avoid race conditions: An `etag` is returned in the response to `getIamPolicy`, and systems are expected to put that etag in the request to `setIamPolicy` to ensure that their change will be applied to the same version of the policy.
If no `etag` is provided in the call to `setIamPolicy`, then the existing policy is overwritten blindly.
* @property {boolean} iamOwned
* @property {clouduseraccounts(alpha).Rule[]} rules If more than one rule is specified, the rules are applied in the following manner: - All matching LOG rules are always applied. - If any DENY/DENY_WITH_LOG rule matches, permission is denied. Logging will be applied if one or more matching rule requires logging. - Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is granted. Logging will be applied if one or more matching rule requires logging. - Otherwise, if no rule applies, permission is denied.
* @property {integer} version Version of the `Policy`. The default version is 0.
*/
/**
* @typedef PublicKey
* @memberOf! clouduseraccounts(alpha)
* @type object
* @property {string} creationTimestamp [Output Only] Creation timestamp in RFC3339 text format.
* @property {string} description An optional textual description of the resource; provided by the client when the resource is created.
* @property {string} expirationTimestamp Optional expiration timestamp. If provided, the timestamp must be in RFC3339 text format. If not provided, the public key never expires.
* @property {string} fingerprint [Output Only] The fingerprint of the key is defined by RFC4716 to be the MD5 digest of the public key.
* @property {string} key Public key text in SSH format, defined by RFC4253 section 6.6.
*/
/**
* @typedef Rule
* @memberOf! clouduseraccounts(alpha)
* @type object
* @property {string} action Required
* @property {clouduseraccounts(alpha).Condition[]} conditions Additional restrictions that must be met
* @property {string} description Human-readable description of the rule.
* @property {string[]} ins The rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is in this set of entries.
* @property {clouduseraccounts(alpha).LogConfig[]} logConfigs The config returned to callers of tech.iam.IAM.CheckPolicy for any entries that match the LOG action.
* @property {string[]} notIns The rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is not in this set of entries.
* @property {string[]} permissions A permission is a string of form '..' (e.g., 'storage.buckets.list'). A value of '*' matches all permissions, and a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs.
*/
/**
* @typedef TestPermissionsRequest
* @memberOf! clouduseraccounts(alpha)
* @type object
* @property {string[]} permissions The set of permissions to check for the 'resource'. Permissions with wildcards (such as '*' or 'storage.*') are not allowed.
*/
/**
* @typedef TestPermissionsResponse
* @memberOf! clouduseraccounts(alpha)
* @type object
* @property {string[]} permissions A subset of `TestPermissionsRequest.permissions` that the caller is allowed.
*/
/**
* @typedef User
* @memberOf! clouduseraccounts(alpha)
* @type object
* @property {string} creationTimestamp [Output Only] Creation timestamp in RFC3339 text format.
* @property {string} description An optional textual description of the resource; provided by the client when the resource is created.
* @property {string[]} groups [Output Only] A list of URLs to Group resources who contain the user. Users are only members of groups in the same project.
* @property {string} id [Output Only] Unique identifier for the resource; defined by the server.
* @property {string} kind [Output Only] Type of the resource. Always clouduseraccounts#user for users.
* @property {string} name Name of the resource; provided by the client when the resource is created.
* @property {string} owner Email address of account's owner. This account will be validated to make sure it exists. The email can belong to any domain, but it must be tied to a Google account.
* @property {clouduseraccounts(alpha).PublicKey[]} publicKeys [Output Only] Public keys that this user may use to login.
* @property {string} selfLink [Output Only] Server defined URL for the resource.
*/
/**
* @typedef UserList
* @memberOf! clouduseraccounts(alpha)
* @type object
* @property {string} id [Output Only] Unique identifier for the resource; defined by the server.
* @property {clouduseraccounts(alpha).User[]} items [Output Only] A list of User resources.
* @property {string} kind [Output Only] Type of resource. Always clouduseraccounts#userList for lists of users.
* @property {string} nextPageToken [Output Only] A token used to continue a truncated list request.
* @property {string} selfLink [Output Only] Server defined URL for this resource.
*/
module.exports = Clouduseraccounts;
|
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 1791 1792 1793 1794 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* Cloud User Accounts API
*
* Creates and manages users and groups for accessing Google Compute Engine virtual machines.
*
* @example
* var google = require('googleapis');
* var clouduseraccounts = google.clouduseraccounts('beta');
*
* @namespace clouduseraccounts
* @type {Function}
* @version beta
* @variation beta
* @param {object=} options Options for Clouduseraccounts
*/
function Clouduseraccounts(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.globalAccountsOperations = {
/**
* clouduseraccounts.globalAccountsOperations.delete
*
* @desc Deletes the specified operation resource.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the Cloud User Accounts API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/clouduseraccounts
* // 2. This sample uses Application Default Credentials for authentication.
* // If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk and run
* // `gcloud beta auth application-default login`.
* // For more information, see
* // https://developers.google.com/identity/protocols/application-default-credentials
* // 3. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var cloudUserAccounts = google.clouduseraccounts('beta');
*
* authorize(function(authClient) {
* var request = {
* // Project ID for this request.
* project: '', // TODO: Update placeholder value.
*
* // Name of the Operations resource to delete.
* operation: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* cloudUserAccounts.globalAccountsOperations.delete(request, function(err) {
* if (err) {
* console.log(err);
* return;
* }
* });
* });
*
* function authorize(callback) {
* google.auth.getApplicationDefault(function(err, authClient)) {
* if (err) {
* console.log('authentication failed: ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
* callback(authClient);
* });
* }
*
* @alias clouduseraccounts.globalAccountsOperations.delete
* @memberOf! clouduseraccounts(beta)
*
* @param {object} params Parameters for request
* @param {string} params.operation Name of the Operations resource to delete.
* @param {string} params.project Project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/beta/projects/{project}/global/operations/{operation}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['project', 'operation'],
pathParams: ['operation', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.globalAccountsOperations.get
*
* @desc Retrieves the specified operation resource.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the Cloud User Accounts API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/clouduseraccounts
* // 2. This sample uses Application Default Credentials for authentication.
* // If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk and run
* // `gcloud beta auth application-default login`.
* // For more information, see
* // https://developers.google.com/identity/protocols/application-default-credentials
* // 3. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var cloudUserAccounts = google.clouduseraccounts('beta');
*
* authorize(function(authClient) {
* var request = {
* // Project ID for this request.
* project: '', // TODO: Update placeholder value.
*
* // Name of the Operations resource to return.
* operation: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* cloudUserAccounts.globalAccountsOperations.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* google.auth.getApplicationDefault(function(err, authClient)) {
* if (err) {
* console.log('authentication failed: ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
* callback(authClient);
* });
* }
*
* @alias clouduseraccounts.globalAccountsOperations.get
* @memberOf! clouduseraccounts(beta)
*
* @param {object} params Parameters for request
* @param {string} params.operation Name of the Operations resource to return.
* @param {string} params.project Project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/beta/projects/{project}/global/operations/{operation}',
method: 'GET'
}, options),
params: params,
requiredParams: ['project', 'operation'],
pathParams: ['operation', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.globalAccountsOperations.list
*
* @desc Retrieves the list of operation resources contained within the specified project.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the Cloud User Accounts API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/clouduseraccounts
* // 2. This sample uses Application Default Credentials for authentication.
* // If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk and run
* // `gcloud beta auth application-default login`.
* // For more information, see
* // https://developers.google.com/identity/protocols/application-default-credentials
* // 3. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var cloudUserAccounts = google.clouduseraccounts('beta');
*
* authorize(function(authClient) {
* var request = {
* // Project ID for this request.
* project: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var itemsPage = response['items'];
* if (!itemsPage) {
* return;
* }
* for (var i = 0; i < itemsPage.length; i++) {
* // TODO: Change code below to process each resource in `itemsPage`:
* console.log(JSON.stringify(itemsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* cloudUserAccounts.globalAccountsOperations.list(request, handlePage);
* }
* };
*
* cloudUserAccounts.globalAccountsOperations.list(request, handlePage);
* });
*
* function authorize(callback) {
* google.auth.getApplicationDefault(function(err, authClient)) {
* if (err) {
* console.log('authentication failed: ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
* callback(authClient);
* });
* }
*
* @alias clouduseraccounts.globalAccountsOperations.list
* @memberOf! clouduseraccounts(beta)
*
* @param {object} params Parameters for request
* @param {string=} params.filter Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string. The field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field. For example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance. Compute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values. The Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.
* @param {integer=} params.maxResults The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.
* @param {string=} params.orderBy Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using orderBy="creationTimestamp desc". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by name or creationTimestamp desc is supported.
* @param {string=} params.pageToken Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.
* @param {string} params.project Project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/beta/projects/{project}/global/operations',
method: 'GET'
}, options),
params: params,
requiredParams: ['project'],
pathParams: ['project'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.groups = {
/**
* clouduseraccounts.groups.addMember
*
* @desc Adds users to the specified group.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the Cloud User Accounts API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/clouduseraccounts
* // 2. This sample uses Application Default Credentials for authentication.
* // If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk and run
* // `gcloud beta auth application-default login`.
* // For more information, see
* // https://developers.google.com/identity/protocols/application-default-credentials
* // 3. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var cloudUserAccounts = google.clouduseraccounts('beta');
*
* authorize(function(authClient) {
* var request = {
* // Project ID for this request.
* project: '', // TODO: Update placeholder value.
*
* // Name of the group for this request.
* groupName: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* cloudUserAccounts.groups.addMember(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* google.auth.getApplicationDefault(function(err, authClient)) {
* if (err) {
* console.log('authentication failed: ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
* callback(authClient);
* });
* }
*
* @alias clouduseraccounts.groups.addMember
* @memberOf! clouduseraccounts(beta)
*
* @param {object} params Parameters for request
* @param {string} params.groupName Name of the group for this request.
* @param {string} params.project Project ID for this request.
* @param {clouduseraccounts(beta).GroupsAddMemberRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
addMember: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/beta/projects/{project}/global/groups/{groupName}/addMember',
method: 'POST'
}, options),
params: params,
requiredParams: ['project', 'groupName'],
pathParams: ['groupName', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.groups.delete
*
* @desc Deletes the specified Group resource.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the Cloud User Accounts API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/clouduseraccounts
* // 2. This sample uses Application Default Credentials for authentication.
* // If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk and run
* // `gcloud beta auth application-default login`.
* // For more information, see
* // https://developers.google.com/identity/protocols/application-default-credentials
* // 3. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var cloudUserAccounts = google.clouduseraccounts('beta');
*
* authorize(function(authClient) {
* var request = {
* // Project ID for this request.
* project: '', // TODO: Update placeholder value.
*
* // Name of the Group resource to delete.
* groupName: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* cloudUserAccounts.groups.delete(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* google.auth.getApplicationDefault(function(err, authClient)) {
* if (err) {
* console.log('authentication failed: ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
* callback(authClient);
* });
* }
*
* @alias clouduseraccounts.groups.delete
* @memberOf! clouduseraccounts(beta)
*
* @param {object} params Parameters for request
* @param {string} params.groupName Name of the Group resource to delete.
* @param {string} params.project Project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/beta/projects/{project}/global/groups/{groupName}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['project', 'groupName'],
pathParams: ['groupName', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.groups.get
*
* @desc Returns the specified Group resource.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the Cloud User Accounts API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/clouduseraccounts
* // 2. This sample uses Application Default Credentials for authentication.
* // If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk and run
* // `gcloud beta auth application-default login`.
* // For more information, see
* // https://developers.google.com/identity/protocols/application-default-credentials
* // 3. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var cloudUserAccounts = google.clouduseraccounts('beta');
*
* authorize(function(authClient) {
* var request = {
* // Project ID for this request.
* project: '', // TODO: Update placeholder value.
*
* // Name of the Group resource to return.
* groupName: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* cloudUserAccounts.groups.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* google.auth.getApplicationDefault(function(err, authClient)) {
* if (err) {
* console.log('authentication failed: ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
* callback(authClient);
* });
* }
*
* @alias clouduseraccounts.groups.get
* @memberOf! clouduseraccounts(beta)
*
* @param {object} params Parameters for request
* @param {string} params.groupName Name of the Group resource to return.
* @param {string} params.project Project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/beta/projects/{project}/global/groups/{groupName}',
method: 'GET'
}, options),
params: params,
requiredParams: ['project', 'groupName'],
pathParams: ['groupName', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.groups.insert
*
* @desc Creates a Group resource in the specified project using the data included in the request.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the Cloud User Accounts API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/clouduseraccounts
* // 2. This sample uses Application Default Credentials for authentication.
* // If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk and run
* // `gcloud beta auth application-default login`.
* // For more information, see
* // https://developers.google.com/identity/protocols/application-default-credentials
* // 3. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var cloudUserAccounts = google.clouduseraccounts('beta');
*
* authorize(function(authClient) {
* var request = {
* // Project ID for this request.
* project: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* cloudUserAccounts.groups.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* google.auth.getApplicationDefault(function(err, authClient)) {
* if (err) {
* console.log('authentication failed: ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
* callback(authClient);
* });
* }
*
* @alias clouduseraccounts.groups.insert
* @memberOf! clouduseraccounts(beta)
*
* @param {object} params Parameters for request
* @param {string} params.project Project ID for this request.
* @param {clouduseraccounts(beta).Group} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/beta/projects/{project}/global/groups',
method: 'POST'
}, options),
params: params,
requiredParams: ['project'],
pathParams: ['project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.groups.list
*
* @desc Retrieves the list of groups contained within the specified project.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the Cloud User Accounts API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/clouduseraccounts
* // 2. This sample uses Application Default Credentials for authentication.
* // If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk and run
* // `gcloud beta auth application-default login`.
* // For more information, see
* // https://developers.google.com/identity/protocols/application-default-credentials
* // 3. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var cloudUserAccounts = google.clouduseraccounts('beta');
*
* authorize(function(authClient) {
* var request = {
* // Project ID for this request.
* project: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var itemsPage = response['items'];
* if (!itemsPage) {
* return;
* }
* for (var i = 0; i < itemsPage.length; i++) {
* // TODO: Change code below to process each resource in `itemsPage`:
* console.log(JSON.stringify(itemsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* cloudUserAccounts.groups.list(request, handlePage);
* }
* };
*
* cloudUserAccounts.groups.list(request, handlePage);
* });
*
* function authorize(callback) {
* google.auth.getApplicationDefault(function(err, authClient)) {
* if (err) {
* console.log('authentication failed: ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
* callback(authClient);
* });
* }
*
* @alias clouduseraccounts.groups.list
* @memberOf! clouduseraccounts(beta)
*
* @param {object} params Parameters for request
* @param {string=} params.filter Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string. The field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field. For example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance. Compute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values. The Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.
* @param {integer=} params.maxResults The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.
* @param {string=} params.orderBy Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using orderBy="creationTimestamp desc". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by name or creationTimestamp desc is supported.
* @param {string=} params.pageToken Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.
* @param {string} params.project Project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/beta/projects/{project}/global/groups',
method: 'GET'
}, options),
params: params,
requiredParams: ['project'],
pathParams: ['project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.groups.removeMember
*
* @desc Removes users from the specified group.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the Cloud User Accounts API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/clouduseraccounts
* // 2. This sample uses Application Default Credentials for authentication.
* // If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk and run
* // `gcloud beta auth application-default login`.
* // For more information, see
* // https://developers.google.com/identity/protocols/application-default-credentials
* // 3. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var cloudUserAccounts = google.clouduseraccounts('beta');
*
* authorize(function(authClient) {
* var request = {
* // Project ID for this request.
* project: '', // TODO: Update placeholder value.
*
* // Name of the group for this request.
* groupName: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* cloudUserAccounts.groups.removeMember(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* google.auth.getApplicationDefault(function(err, authClient)) {
* if (err) {
* console.log('authentication failed: ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
* callback(authClient);
* });
* }
*
* @alias clouduseraccounts.groups.removeMember
* @memberOf! clouduseraccounts(beta)
*
* @param {object} params Parameters for request
* @param {string} params.groupName Name of the group for this request.
* @param {string} params.project Project ID for this request.
* @param {clouduseraccounts(beta).GroupsRemoveMemberRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
removeMember: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/beta/projects/{project}/global/groups/{groupName}/removeMember',
method: 'POST'
}, options),
params: params,
requiredParams: ['project', 'groupName'],
pathParams: ['groupName', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.linux = {
/**
* clouduseraccounts.linux.getAuthorizedKeysView
*
* @desc Returns a list of authorized public keys for a specific user account.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the Cloud User Accounts API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/clouduseraccounts
* // 2. This sample uses Application Default Credentials for authentication.
* // If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk and run
* // `gcloud beta auth application-default login`.
* // For more information, see
* // https://developers.google.com/identity/protocols/application-default-credentials
* // 3. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var cloudUserAccounts = google.clouduseraccounts('beta');
*
* authorize(function(authClient) {
* var request = {
* // Project ID for this request.
* project: '', // TODO: Update placeholder value.
*
* // Name of the zone for this request.
* zone: '', // TODO: Update placeholder value.
*
* // The user account for which you want to get a list of authorized public keys.
* user: '', // TODO: Update placeholder value.
*
* // The fully-qualified URL of the virtual machine requesting the view.
* instance: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* cloudUserAccounts.linux.getAuthorizedKeysView(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* google.auth.getApplicationDefault(function(err, authClient)) {
* if (err) {
* console.log('authentication failed: ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
* callback(authClient);
* });
* }
*
* @alias clouduseraccounts.linux.getAuthorizedKeysView
* @memberOf! clouduseraccounts(beta)
*
* @param {object} params Parameters for request
* @param {string} params.instance The fully-qualified URL of the virtual machine requesting the view.
* @param {boolean=} params.login Whether the view was requested as part of a user-initiated login.
* @param {string} params.project Project ID for this request.
* @param {string} params.user The user account for which you want to get a list of authorized public keys.
* @param {string} params.zone Name of the zone for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
getAuthorizedKeysView: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/beta/projects/{project}/zones/{zone}/authorizedKeysView/{user}',
method: 'POST'
}, options),
params: params,
requiredParams: ['project', 'zone', 'user', 'instance'],
pathParams: ['project', 'user', 'zone'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.linux.getLinuxAccountViews
*
* @desc Retrieves a list of user accounts for an instance within a specific project.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the Cloud User Accounts API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/clouduseraccounts
* // 2. This sample uses Application Default Credentials for authentication.
* // If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk and run
* // `gcloud beta auth application-default login`.
* // For more information, see
* // https://developers.google.com/identity/protocols/application-default-credentials
* // 3. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var cloudUserAccounts = google.clouduseraccounts('beta');
*
* authorize(function(authClient) {
* var request = {
* // Project ID for this request.
* project: '', // TODO: Update placeholder value.
*
* // Name of the zone for this request.
* zone: '', // TODO: Update placeholder value.
*
* // The fully-qualified URL of the virtual machine requesting the views.
* instance: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* cloudUserAccounts.linux.getLinuxAccountViews(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* google.auth.getApplicationDefault(function(err, authClient)) {
* if (err) {
* console.log('authentication failed: ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
* callback(authClient);
* });
* }
*
* @alias clouduseraccounts.linux.getLinuxAccountViews
* @memberOf! clouduseraccounts(beta)
*
* @param {object} params Parameters for request
* @param {string=} params.filter Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string. The field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field. For example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance. Compute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values. The Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.
* @param {string} params.instance The fully-qualified URL of the virtual machine requesting the views.
* @param {integer=} params.maxResults The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.
* @param {string=} params.orderBy Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using orderBy="creationTimestamp desc". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by name or creationTimestamp desc is supported.
* @param {string=} params.pageToken Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.
* @param {string} params.project Project ID for this request.
* @param {string} params.zone Name of the zone for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
getLinuxAccountViews: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/beta/projects/{project}/zones/{zone}/linuxAccountViews',
method: 'POST'
}, options),
params: params,
requiredParams: ['project', 'zone', 'instance'],
pathParams: ['project', 'zone'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.users = {
/**
* clouduseraccounts.users.addPublicKey
*
* @desc Adds a public key to the specified User resource with the data included in the request.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the Cloud User Accounts API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/clouduseraccounts
* // 2. This sample uses Application Default Credentials for authentication.
* // If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk and run
* // `gcloud beta auth application-default login`.
* // For more information, see
* // https://developers.google.com/identity/protocols/application-default-credentials
* // 3. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var cloudUserAccounts = google.clouduseraccounts('beta');
*
* authorize(function(authClient) {
* var request = {
* // Project ID for this request.
* project: '', // TODO: Update placeholder value.
*
* // Name of the user for this request.
* user: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* cloudUserAccounts.users.addPublicKey(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* google.auth.getApplicationDefault(function(err, authClient)) {
* if (err) {
* console.log('authentication failed: ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
* callback(authClient);
* });
* }
*
* @alias clouduseraccounts.users.addPublicKey
* @memberOf! clouduseraccounts(beta)
*
* @param {object} params Parameters for request
* @param {string} params.project Project ID for this request.
* @param {string} params.user Name of the user for this request.
* @param {clouduseraccounts(beta).PublicKey} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
addPublicKey: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/beta/projects/{project}/global/users/{user}/addPublicKey',
method: 'POST'
}, options),
params: params,
requiredParams: ['project', 'user'],
pathParams: ['project', 'user'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.users.delete
*
* @desc Deletes the specified User resource.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the Cloud User Accounts API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/clouduseraccounts
* // 2. This sample uses Application Default Credentials for authentication.
* // If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk and run
* // `gcloud beta auth application-default login`.
* // For more information, see
* // https://developers.google.com/identity/protocols/application-default-credentials
* // 3. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var cloudUserAccounts = google.clouduseraccounts('beta');
*
* authorize(function(authClient) {
* var request = {
* // Project ID for this request.
* project: '', // TODO: Update placeholder value.
*
* // Name of the user resource to delete.
* user: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* cloudUserAccounts.users.delete(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* google.auth.getApplicationDefault(function(err, authClient)) {
* if (err) {
* console.log('authentication failed: ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
* callback(authClient);
* });
* }
*
* @alias clouduseraccounts.users.delete
* @memberOf! clouduseraccounts(beta)
*
* @param {object} params Parameters for request
* @param {string} params.project Project ID for this request.
* @param {string} params.user Name of the user resource to delete.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/beta/projects/{project}/global/users/{user}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['project', 'user'],
pathParams: ['project', 'user'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.users.get
*
* @desc Returns the specified User resource.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the Cloud User Accounts API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/clouduseraccounts
* // 2. This sample uses Application Default Credentials for authentication.
* // If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk and run
* // `gcloud beta auth application-default login`.
* // For more information, see
* // https://developers.google.com/identity/protocols/application-default-credentials
* // 3. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var cloudUserAccounts = google.clouduseraccounts('beta');
*
* authorize(function(authClient) {
* var request = {
* // Project ID for this request.
* project: '', // TODO: Update placeholder value.
*
* // Name of the user resource to return.
* user: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* cloudUserAccounts.users.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* google.auth.getApplicationDefault(function(err, authClient)) {
* if (err) {
* console.log('authentication failed: ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
* callback(authClient);
* });
* }
*
* @alias clouduseraccounts.users.get
* @memberOf! clouduseraccounts(beta)
*
* @param {object} params Parameters for request
* @param {string} params.project Project ID for this request.
* @param {string} params.user Name of the user resource to return.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/beta/projects/{project}/global/users/{user}',
method: 'GET'
}, options),
params: params,
requiredParams: ['project', 'user'],
pathParams: ['project', 'user'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.users.insert
*
* @desc Creates a User resource in the specified project using the data included in the request.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the Cloud User Accounts API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/clouduseraccounts
* // 2. This sample uses Application Default Credentials for authentication.
* // If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk and run
* // `gcloud beta auth application-default login`.
* // For more information, see
* // https://developers.google.com/identity/protocols/application-default-credentials
* // 3. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var cloudUserAccounts = google.clouduseraccounts('beta');
*
* authorize(function(authClient) {
* var request = {
* // Project ID for this request.
* project: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* cloudUserAccounts.users.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* google.auth.getApplicationDefault(function(err, authClient)) {
* if (err) {
* console.log('authentication failed: ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
* callback(authClient);
* });
* }
*
* @alias clouduseraccounts.users.insert
* @memberOf! clouduseraccounts(beta)
*
* @param {object} params Parameters for request
* @param {string} params.project Project ID for this request.
* @param {clouduseraccounts(beta).User} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/beta/projects/{project}/global/users',
method: 'POST'
}, options),
params: params,
requiredParams: ['project'],
pathParams: ['project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.users.list
*
* @desc Retrieves a list of users contained within the specified project.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the Cloud User Accounts API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/clouduseraccounts
* // 2. This sample uses Application Default Credentials for authentication.
* // If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk and run
* // `gcloud beta auth application-default login`.
* // For more information, see
* // https://developers.google.com/identity/protocols/application-default-credentials
* // 3. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var cloudUserAccounts = google.clouduseraccounts('beta');
*
* authorize(function(authClient) {
* var request = {
* // Project ID for this request.
* project: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var itemsPage = response['items'];
* if (!itemsPage) {
* return;
* }
* for (var i = 0; i < itemsPage.length; i++) {
* // TODO: Change code below to process each resource in `itemsPage`:
* console.log(JSON.stringify(itemsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* cloudUserAccounts.users.list(request, handlePage);
* }
* };
*
* cloudUserAccounts.users.list(request, handlePage);
* });
*
* function authorize(callback) {
* google.auth.getApplicationDefault(function(err, authClient)) {
* if (err) {
* console.log('authentication failed: ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
* callback(authClient);
* });
* }
*
* @alias clouduseraccounts.users.list
* @memberOf! clouduseraccounts(beta)
*
* @param {object} params Parameters for request
* @param {string=} params.filter Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string. The field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field. For example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance. Compute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values. The Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.
* @param {integer=} params.maxResults The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.
* @param {string=} params.orderBy Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using orderBy="creationTimestamp desc". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by name or creationTimestamp desc is supported.
* @param {string=} params.pageToken Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.
* @param {string} params.project Project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/beta/projects/{project}/global/users',
method: 'GET'
}, options),
params: params,
requiredParams: ['project'],
pathParams: ['project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.users.removePublicKey
*
* @desc Removes the specified public key from the user.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the Cloud User Accounts API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/clouduseraccounts
* // 2. This sample uses Application Default Credentials for authentication.
* // If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk and run
* // `gcloud beta auth application-default login`.
* // For more information, see
* // https://developers.google.com/identity/protocols/application-default-credentials
* // 3. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var cloudUserAccounts = google.clouduseraccounts('beta');
*
* authorize(function(authClient) {
* var request = {
* // Project ID for this request.
* project: '', // TODO: Update placeholder value.
*
* // Name of the user for this request.
* user: '', // TODO: Update placeholder value.
*
* // The fingerprint of the public key to delete. Public keys are identified by their fingerprint, which
* // is defined by RFC4716 to be the MD5 digest of the public key.
* fingerprint: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* cloudUserAccounts.users.removePublicKey(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* google.auth.getApplicationDefault(function(err, authClient)) {
* if (err) {
* console.log('authentication failed: ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
* callback(authClient);
* });
* }
*
* @alias clouduseraccounts.users.removePublicKey
* @memberOf! clouduseraccounts(beta)
*
* @param {object} params Parameters for request
* @param {string} params.fingerprint The fingerprint of the public key to delete. Public keys are identified by their fingerprint, which is defined by RFC4716 to be the MD5 digest of the public key.
* @param {string} params.project Project ID for this request.
* @param {string} params.user Name of the user for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
removePublicKey: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/beta/projects/{project}/global/users/{user}/removePublicKey',
method: 'POST'
}, options),
params: params,
requiredParams: ['project', 'user', 'fingerprint'],
pathParams: ['project', 'user'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
}
/**
* @typedef AuthorizedKeysView
* @memberOf! clouduseraccounts(beta)
* @type object
* @property {string[]} keys [Output Only] The list of authorized public keys in SSH format.
* @property {boolean} sudoer [Output Only] Whether the user has the ability to elevate on the instance that requested the authorized keys.
*/
/**
* @typedef Group
* @memberOf! clouduseraccounts(beta)
* @type object
* @property {string} creationTimestamp [Output Only] Creation timestamp in RFC3339 text format.
* @property {string} description An optional textual description of the resource; provided by the client when the resource is created.
* @property {string} id [Output Only] Unique identifier for the resource; defined by the server.
* @property {string} kind [Output Only] Type of the resource. Always clouduseraccounts#group for groups.
* @property {string[]} members [Output Only] A list of URLs to User resources who belong to the group. Users may only be members of groups in the same project.
* @property {string} name Name of the resource; provided by the client when the resource is created.
* @property {string} selfLink [Output Only] Server defined URL for the resource.
*/
/**
* @typedef GroupList
* @memberOf! clouduseraccounts(beta)
* @type object
* @property {string} id [Output Only] Unique identifier for the resource; defined by the server.
* @property {clouduseraccounts(beta).Group[]} items [Output Only] A list of Group resources.
* @property {string} kind [Output Only] Type of resource. Always clouduseraccounts#groupList for lists of groups.
* @property {string} nextPageToken [Output Only] A token used to continue a truncated list request.
* @property {string} selfLink [Output Only] Server defined URL for this resource.
*/
/**
* @typedef GroupsAddMemberRequest
* @memberOf! clouduseraccounts(beta)
* @type object
* @property {string[]} users Fully-qualified URLs of the User resources to add.
*/
/**
* @typedef GroupsRemoveMemberRequest
* @memberOf! clouduseraccounts(beta)
* @type object
* @property {string[]} users Fully-qualified URLs of the User resources to remove.
*/
/**
* @typedef LinuxAccountViews
* @memberOf! clouduseraccounts(beta)
* @type object
* @property {clouduseraccounts(beta).LinuxGroupView[]} groupViews [Output Only] A list of all groups within a project.
* @property {string} kind [Output Only] Type of the resource. Always clouduseraccounts#linuxAccountViews for Linux resources.
* @property {clouduseraccounts(beta).LinuxUserView[]} userViews [Output Only] A list of all users within a project.
*/
/**
* @typedef LinuxGetAuthorizedKeysViewResponse
* @memberOf! clouduseraccounts(beta)
* @type object
* @property {clouduseraccounts(beta).AuthorizedKeysView} resource [Output Only] A list of authorized public keys for a user.
*/
/**
* @typedef LinuxGetLinuxAccountViewsResponse
* @memberOf! clouduseraccounts(beta)
* @type object
* @property {clouduseraccounts(beta).LinuxAccountViews} resource [Output Only] A list of authorized user accounts and groups.
*/
/**
* @typedef LinuxGroupView
* @memberOf! clouduseraccounts(beta)
* @type object
* @property {integer} gid [Output Only] The Group ID.
* @property {string} groupName [Output Only] Group name.
* @property {string[]} members [Output Only] List of user accounts that belong to the group.
*/
/**
* @typedef LinuxUserView
* @memberOf! clouduseraccounts(beta)
* @type object
* @property {string} gecos [Output Only] The GECOS (user information) entry for this account.
* @property {integer} gid [Output Only] User's default group ID.
* @property {string} homeDirectory [Output Only] The path to the home directory for this account.
* @property {string} shell [Output Only] The path to the login shell for this account.
* @property {integer} uid [Output Only] User ID.
* @property {string} username [Output Only] The username of the account.
*/
/**
* @typedef Operation
* @memberOf! clouduseraccounts(beta)
* @type object
* @property {string} clientOperationId [Output Only] Reserved for future use.
* @property {string} creationTimestamp [Output Only] Creation timestamp in RFC3339 text format.
* @property {string} description [Output Only] A textual description of the operation, which is set when the operation is created.
* @property {string} endTime [Output Only] The time that this operation was completed. This value is in RFC3339 text format.
* @property {object} error [Output Only] If errors are generated during processing of the operation, this field will be populated.
* @property {string} httpErrorMessage [Output Only] If the operation fails, this field contains the HTTP error message that was returned, such as NOT FOUND.
* @property {integer} httpErrorStatusCode [Output Only] If the operation fails, this field contains the HTTP error status code that was returned. For example, a 404 means the resource was not found.
* @property {string} id [Output Only] The unique identifier for the resource. This identifier is defined by the server.
* @property {string} insertTime [Output Only] The time that this operation was requested. This value is in RFC3339 text format.
* @property {string} kind [Output Only] Type of the resource. Always compute#operation for Operation resources.
* @property {string} name [Output Only] Name of the resource.
* @property {string} operationType [Output Only] The type of operation, such as insert, update, or delete, and so on.
* @property {integer} progress [Output Only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess when the operation will be complete. This number should monotonically increase as the operation progresses.
* @property {string} region [Output Only] The URL of the region where the operation resides. Only available when performing regional operations.
* @property {string} selfLink [Output Only] Server-defined URL for the resource.
* @property {string} startTime [Output Only] The time that this operation was started by the server. This value is in RFC3339 text format.
* @property {string} status [Output Only] The status of the operation, which can be one of the following: PENDING, RUNNING, or DONE.
* @property {string} statusMessage [Output Only] An optional textual description of the current status of the operation.
* @property {string} targetId [Output Only] The unique target ID, which identifies a specific incarnation of the target resource.
* @property {string} targetLink [Output Only] The URL of the resource that the operation modifies.
* @property {string} user [Output Only] User who requested the operation, for example: user@example.com.
* @property {object[]} warnings [Output Only] If warning messages are generated during processing of the operation, this field will be populated.
* @property {string} zone [Output Only] The URL of the zone where the operation resides. Only available when performing per-zone operations.
*/
/**
* @typedef OperationList
* @memberOf! clouduseraccounts(beta)
* @type object
* @property {string} id [Output Only] The unique identifier for the resource. This identifier is defined by the server.
* @property {clouduseraccounts(beta).Operation[]} items [Output Only] A list of Operation resources.
* @property {string} kind [Output Only] Type of resource. Always compute#operations for Operations resource.
* @property {string} nextPageToken [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.
* @property {string} selfLink [Output Only] Server-defined URL for this resource.
*/
/**
* @typedef PublicKey
* @memberOf! clouduseraccounts(beta)
* @type object
* @property {string} creationTimestamp [Output Only] Creation timestamp in RFC3339 text format.
* @property {string} description An optional textual description of the resource; provided by the client when the resource is created.
* @property {string} expirationTimestamp Optional expiration timestamp. If provided, the timestamp must be in RFC3339 text format. If not provided, the public key never expires.
* @property {string} fingerprint [Output Only] The fingerprint of the key is defined by RFC4716 to be the MD5 digest of the public key.
* @property {string} key Public key text in SSH format, defined by RFC4253 section 6.6.
*/
/**
* @typedef User
* @memberOf! clouduseraccounts(beta)
* @type object
* @property {string} creationTimestamp [Output Only] Creation timestamp in RFC3339 text format.
* @property {string} description An optional textual description of the resource; provided by the client when the resource is created.
* @property {string[]} groups [Output Only] A list of URLs to Group resources who contain the user. Users are only members of groups in the same project.
* @property {string} id [Output Only] Unique identifier for the resource; defined by the server.
* @property {string} kind [Output Only] Type of the resource. Always clouduseraccounts#user for users.
* @property {string} name Name of the resource; provided by the client when the resource is created.
* @property {string} owner Email address of account's owner. This account will be validated to make sure it exists. The email can belong to any domain, but it must be tied to a Google account.
* @property {clouduseraccounts(beta).PublicKey[]} publicKeys [Output Only] Public keys that this user may use to login.
* @property {string} selfLink [Output Only] Server defined URL for the resource.
*/
/**
* @typedef UserList
* @memberOf! clouduseraccounts(beta)
* @type object
* @property {string} id [Output Only] Unique identifier for the resource; defined by the server.
* @property {clouduseraccounts(beta).User[]} items [Output Only] A list of User resources.
* @property {string} kind [Output Only] Type of resource. Always clouduseraccounts#userList for lists of users.
* @property {string} nextPageToken [Output Only] A token used to continue a truncated list request.
* @property {string} selfLink [Output Only] Server defined URL for this resource.
*/
module.exports = Clouduseraccounts;
|
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* Cloud User Accounts API
*
* Creates and manages users and groups for accessing Google Compute Engine virtual machines.
*
* @example
* var google = require('googleapis');
* var clouduseraccounts = google.clouduseraccounts('vm_alpha');
*
* @namespace clouduseraccounts
* @type {Function}
* @version vm_alpha
* @variation vm_alpha
* @param {object=} options Options for Clouduseraccounts
*/
function Clouduseraccounts(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.globalAccountsOperations = {
/**
* clouduseraccounts.globalAccountsOperations.delete
*
* @desc Deletes the specified operation resource.
*
* @alias clouduseraccounts.globalAccountsOperations.delete
* @memberOf! clouduseraccounts(vm_alpha)
*
* @param {object} params Parameters for request
* @param {string} params.operation Name of the Operations resource to delete.
* @param {string} params.project Project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/vm_alpha/projects/{project}/global/operations/{operation}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['project', 'operation'],
pathParams: ['operation', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.globalAccountsOperations.get
*
* @desc Retrieves the specified operation resource.
*
* @alias clouduseraccounts.globalAccountsOperations.get
* @memberOf! clouduseraccounts(vm_alpha)
*
* @param {object} params Parameters for request
* @param {string} params.operation Name of the Operations resource to return.
* @param {string} params.project Project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/vm_alpha/projects/{project}/global/operations/{operation}',
method: 'GET'
}, options),
params: params,
requiredParams: ['project', 'operation'],
pathParams: ['operation', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.globalAccountsOperations.list
*
* @desc Retrieves the list of operation resources contained within the specified project.
*
* @alias clouduseraccounts.globalAccountsOperations.list
* @memberOf! clouduseraccounts(vm_alpha)
*
* @param {object} params Parameters for request
* @param {string=} params.filter Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string. The field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field. For example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance. Compute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values. The Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.
* @param {integer=} params.maxResults The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.
* @param {string=} params.orderBy Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using orderBy="creationTimestamp desc". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by name or creationTimestamp desc is supported.
* @param {string=} params.pageToken Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.
* @param {string} params.project Project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/vm_alpha/projects/{project}/global/operations',
method: 'GET'
}, options),
params: params,
requiredParams: ['project'],
pathParams: ['project'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.groups = {
/**
* clouduseraccounts.groups.addMember
*
* @desc Adds users to the specified group.
*
* @alias clouduseraccounts.groups.addMember
* @memberOf! clouduseraccounts(vm_alpha)
*
* @param {object} params Parameters for request
* @param {string} params.groupName Name of the group for this request.
* @param {string} params.project Project ID for this request.
* @param {clouduseraccounts(vm_alpha).GroupsAddMemberRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
addMember: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/vm_alpha/projects/{project}/global/groups/{groupName}/addMember',
method: 'POST'
}, options),
params: params,
requiredParams: ['project', 'groupName'],
pathParams: ['groupName', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.groups.delete
*
* @desc Deletes the specified Group resource.
*
* @alias clouduseraccounts.groups.delete
* @memberOf! clouduseraccounts(vm_alpha)
*
* @param {object} params Parameters for request
* @param {string} params.groupName Name of the Group resource to delete.
* @param {string} params.project Project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/vm_alpha/projects/{project}/global/groups/{groupName}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['project', 'groupName'],
pathParams: ['groupName', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.groups.get
*
* @desc Returns the specified Group resource.
*
* @alias clouduseraccounts.groups.get
* @memberOf! clouduseraccounts(vm_alpha)
*
* @param {object} params Parameters for request
* @param {string} params.groupName Name of the Group resource to return.
* @param {string} params.project Project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/vm_alpha/projects/{project}/global/groups/{groupName}',
method: 'GET'
}, options),
params: params,
requiredParams: ['project', 'groupName'],
pathParams: ['groupName', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.groups.getIamPolicy
*
* @desc Gets the access control policy for a resource. May be empty if no such policy or resource exists.
*
* @alias clouduseraccounts.groups.getIamPolicy
* @memberOf! clouduseraccounts(vm_alpha)
*
* @param {object} params Parameters for request
* @param {string} params.project Project ID for this request.
* @param {string} params.resource_ Name of the resource for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
getIamPolicy: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/vm_alpha/projects/{project}/global/groups/{resource}/getIamPolicy',
method: 'GET'
}, options),
params: params,
requiredParams: ['project', 'resource'],
pathParams: ['project', 'resource'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.groups.insert
*
* @desc Creates a Group resource in the specified project using the data included in the request.
*
* @alias clouduseraccounts.groups.insert
* @memberOf! clouduseraccounts(vm_alpha)
*
* @param {object} params Parameters for request
* @param {string} params.project Project ID for this request.
* @param {clouduseraccounts(vm_alpha).Group} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/vm_alpha/projects/{project}/global/groups',
method: 'POST'
}, options),
params: params,
requiredParams: ['project'],
pathParams: ['project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.groups.list
*
* @desc Retrieves the list of groups contained within the specified project.
*
* @alias clouduseraccounts.groups.list
* @memberOf! clouduseraccounts(vm_alpha)
*
* @param {object} params Parameters for request
* @param {string=} params.filter Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string. The field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field. For example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance. Compute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values. The Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.
* @param {integer=} params.maxResults The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.
* @param {string=} params.orderBy Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using orderBy="creationTimestamp desc". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by name or creationTimestamp desc is supported.
* @param {string=} params.pageToken Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.
* @param {string} params.project Project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/vm_alpha/projects/{project}/global/groups',
method: 'GET'
}, options),
params: params,
requiredParams: ['project'],
pathParams: ['project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.groups.removeMember
*
* @desc Removes users from the specified group.
*
* @alias clouduseraccounts.groups.removeMember
* @memberOf! clouduseraccounts(vm_alpha)
*
* @param {object} params Parameters for request
* @param {string} params.groupName Name of the group for this request.
* @param {string} params.project Project ID for this request.
* @param {clouduseraccounts(vm_alpha).GroupsRemoveMemberRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
removeMember: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/vm_alpha/projects/{project}/global/groups/{groupName}/removeMember',
method: 'POST'
}, options),
params: params,
requiredParams: ['project', 'groupName'],
pathParams: ['groupName', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.groups.setIamPolicy
*
* @desc Sets the access control policy on the specified resource. Replaces any existing policy.
*
* @alias clouduseraccounts.groups.setIamPolicy
* @memberOf! clouduseraccounts(vm_alpha)
*
* @param {object} params Parameters for request
* @param {string} params.project Project ID for this request.
* @param {string} params.resource_ Name of the resource for this request.
* @param {clouduseraccounts(vm_alpha).Policy} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
setIamPolicy: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/vm_alpha/projects/{project}/global/groups/{resource}/setIamPolicy',
method: 'POST'
}, options),
params: params,
requiredParams: ['project', 'resource'],
pathParams: ['project', 'resource'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.groups.testIamPermissions
*
* @desc Returns permissions that a caller has on the specified resource.
*
* @alias clouduseraccounts.groups.testIamPermissions
* @memberOf! clouduseraccounts(vm_alpha)
*
* @param {object} params Parameters for request
* @param {string} params.project Project ID for this request.
* @param {string} params.resource_ Name of the resource for this request.
* @param {clouduseraccounts(vm_alpha).TestPermissionsRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
testIamPermissions: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/vm_alpha/projects/{project}/global/groups/{resource}/testIamPermissions',
method: 'POST'
}, options),
params: params,
requiredParams: ['project', 'resource'],
pathParams: ['project', 'resource'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.linux = {
/**
* clouduseraccounts.linux.getAuthorizedKeysView
*
* @desc Returns a list of authorized public keys for a specific user account.
*
* @alias clouduseraccounts.linux.getAuthorizedKeysView
* @memberOf! clouduseraccounts(vm_alpha)
*
* @param {object} params Parameters for request
* @param {string} params.instance The fully-qualified URL of the virtual machine requesting the view.
* @param {boolean=} params.login Whether the view was requested as part of a user-initiated login.
* @param {string} params.project Project ID for this request.
* @param {string} params.user The user account for which you want to get a list of authorized public keys.
* @param {string} params.zone Name of the zone for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
getAuthorizedKeysView: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/vm_alpha/projects/{project}/zones/{zone}/authorizedKeysView/{user}',
method: 'POST'
}, options),
params: params,
requiredParams: ['project', 'zone', 'user', 'instance'],
pathParams: ['project', 'user', 'zone'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.linux.getLinuxAccountViews
*
* @desc Retrieves a list of user accounts for an instance within a specific project.
*
* @alias clouduseraccounts.linux.getLinuxAccountViews
* @memberOf! clouduseraccounts(vm_alpha)
*
* @param {object} params Parameters for request
* @param {string=} params.filter Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string. The field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field. For example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance. Compute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values. The Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.
* @param {string} params.instance The fully-qualified URL of the virtual machine requesting the views.
* @param {integer=} params.maxResults The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.
* @param {string=} params.orderBy Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using orderBy="creationTimestamp desc". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by name or creationTimestamp desc is supported.
* @param {string=} params.pageToken Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.
* @param {string} params.project Project ID for this request.
* @param {string} params.zone Name of the zone for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
getLinuxAccountViews: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/vm_alpha/projects/{project}/zones/{zone}/linuxAccountViews',
method: 'POST'
}, options),
params: params,
requiredParams: ['project', 'zone', 'instance'],
pathParams: ['project', 'zone'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.users = {
/**
* clouduseraccounts.users.addPublicKey
*
* @desc Adds a public key to the specified User resource with the data included in the request.
*
* @alias clouduseraccounts.users.addPublicKey
* @memberOf! clouduseraccounts(vm_alpha)
*
* @param {object} params Parameters for request
* @param {string} params.project Project ID for this request.
* @param {string} params.user Name of the user for this request.
* @param {clouduseraccounts(vm_alpha).PublicKey} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
addPublicKey: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/vm_alpha/projects/{project}/global/users/{user}/addPublicKey',
method: 'POST'
}, options),
params: params,
requiredParams: ['project', 'user'],
pathParams: ['project', 'user'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.users.delete
*
* @desc Deletes the specified User resource.
*
* @alias clouduseraccounts.users.delete
* @memberOf! clouduseraccounts(vm_alpha)
*
* @param {object} params Parameters for request
* @param {string} params.project Project ID for this request.
* @param {string} params.user Name of the user resource to delete.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/vm_alpha/projects/{project}/global/users/{user}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['project', 'user'],
pathParams: ['project', 'user'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.users.get
*
* @desc Returns the specified User resource.
*
* @alias clouduseraccounts.users.get
* @memberOf! clouduseraccounts(vm_alpha)
*
* @param {object} params Parameters for request
* @param {string} params.project Project ID for this request.
* @param {string} params.user Name of the user resource to return.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/vm_alpha/projects/{project}/global/users/{user}',
method: 'GET'
}, options),
params: params,
requiredParams: ['project', 'user'],
pathParams: ['project', 'user'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.users.getIamPolicy
*
* @desc Gets the access control policy for a resource. May be empty if no such policy or resource exists.
*
* @alias clouduseraccounts.users.getIamPolicy
* @memberOf! clouduseraccounts(vm_alpha)
*
* @param {object} params Parameters for request
* @param {string} params.project Project ID for this request.
* @param {string} params.resource_ Name of the resource for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
getIamPolicy: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/vm_alpha/projects/{project}/global/users/{resource}/getIamPolicy',
method: 'GET'
}, options),
params: params,
requiredParams: ['project', 'resource'],
pathParams: ['project', 'resource'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.users.insert
*
* @desc Creates a User resource in the specified project using the data included in the request.
*
* @alias clouduseraccounts.users.insert
* @memberOf! clouduseraccounts(vm_alpha)
*
* @param {object} params Parameters for request
* @param {string} params.project Project ID for this request.
* @param {clouduseraccounts(vm_alpha).User} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/vm_alpha/projects/{project}/global/users',
method: 'POST'
}, options),
params: params,
requiredParams: ['project'],
pathParams: ['project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.users.list
*
* @desc Retrieves a list of users contained within the specified project.
*
* @alias clouduseraccounts.users.list
* @memberOf! clouduseraccounts(vm_alpha)
*
* @param {object} params Parameters for request
* @param {string=} params.filter Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string. The field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field. For example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance. Compute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values. The Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.
* @param {integer=} params.maxResults The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.
* @param {string=} params.orderBy Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using orderBy="creationTimestamp desc". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by name or creationTimestamp desc is supported.
* @param {string=} params.pageToken Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.
* @param {string} params.project Project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/vm_alpha/projects/{project}/global/users',
method: 'GET'
}, options),
params: params,
requiredParams: ['project'],
pathParams: ['project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.users.removePublicKey
*
* @desc Removes the specified public key from the user.
*
* @alias clouduseraccounts.users.removePublicKey
* @memberOf! clouduseraccounts(vm_alpha)
*
* @param {object} params Parameters for request
* @param {string} params.fingerprint The fingerprint of the public key to delete. Public keys are identified by their fingerprint, which is defined by RFC4716 to be the MD5 digest of the public key.
* @param {string} params.project Project ID for this request.
* @param {string} params.user Name of the user for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
removePublicKey: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/vm_alpha/projects/{project}/global/users/{user}/removePublicKey',
method: 'POST'
}, options),
params: params,
requiredParams: ['project', 'user', 'fingerprint'],
pathParams: ['project', 'user'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.users.setIamPolicy
*
* @desc Sets the access control policy on the specified resource. Replaces any existing policy.
*
* @alias clouduseraccounts.users.setIamPolicy
* @memberOf! clouduseraccounts(vm_alpha)
*
* @param {object} params Parameters for request
* @param {string} params.project Project ID for this request.
* @param {string} params.resource_ Name of the resource for this request.
* @param {clouduseraccounts(vm_alpha).Policy} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
setIamPolicy: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/vm_alpha/projects/{project}/global/users/{resource}/setIamPolicy',
method: 'POST'
}, options),
params: params,
requiredParams: ['project', 'resource'],
pathParams: ['project', 'resource'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.users.testIamPermissions
*
* @desc Returns permissions that a caller has on the specified resource.
*
* @alias clouduseraccounts.users.testIamPermissions
* @memberOf! clouduseraccounts(vm_alpha)
*
* @param {object} params Parameters for request
* @param {string} params.project Project ID for this request.
* @param {string} params.resource_ Name of the resource for this request.
* @param {clouduseraccounts(vm_alpha).TestPermissionsRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
testIamPermissions: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/vm_alpha/projects/{project}/global/users/{resource}/testIamPermissions',
method: 'POST'
}, options),
params: params,
requiredParams: ['project', 'resource'],
pathParams: ['project', 'resource'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
}
/**
* @typedef AuditConfig
* @memberOf! clouduseraccounts(vm_alpha)
* @type object
* @property {string[]} exemptedMembers Specifies the identities that are exempted from "data access" audit logging for the `service` specified above. Follows the same format of Binding.members.
* @property {string} service Specifies a service that will be enabled for "data access" audit logging. For example, `resourcemanager`, `storage`, `compute`. `allServices` is a special value that covers all services.
*/
/**
* @typedef AuthorizedKeysView
* @memberOf! clouduseraccounts(vm_alpha)
* @type object
* @property {string[]} keys [Output Only] The list of authorized public keys in SSH format.
* @property {boolean} sudoer [Output Only] Whether the user has the ability to elevate on the instance that requested the authorized keys.
*/
/**
* @typedef Binding
* @memberOf! clouduseraccounts(vm_alpha)
* @type object
* @property {string[]} members Specifies the identities requesting access for a Cloud Platform resource. `members` can have the following values:
* `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account.
* `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account.
* `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@gmail.com` or `joe@example.com`.
* `serviceAccount:{emailid}`: An email address that represents a service account. For example, `my-other-app@appspot.gserviceaccount.com`.
* `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`.
* `domain:{domain}`: A Google Apps domain name that represents all the users of that domain. For example, `google.com` or `example.com`.
* @property {string} role Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
*/
/**
* @typedef Condition
* @memberOf! clouduseraccounts(vm_alpha)
* @type object
* @property {string} iam Trusted attributes supplied by the IAM system.
* @property {string} op An operator to apply the subject with.
* @property {string} svc Trusted attributes discharged by the service.
* @property {string} sys Trusted attributes supplied by any service that owns resources and uses the IAM system for access control.
* @property {string} value The object of the condition. Exactly one of these must be set.
* @property {string[]} values The objects of the condition. This is mutually exclusive with 'value'.
*/
/**
* @typedef Group
* @memberOf! clouduseraccounts(vm_alpha)
* @type object
* @property {string} creationTimestamp [Output Only] Creation timestamp in RFC3339 text format.
* @property {string} description An optional textual description of the resource; provided by the client when the resource is created.
* @property {string} id [Output Only] Unique identifier for the resource; defined by the server.
* @property {string} kind [Output Only] Type of the resource. Always clouduseraccounts#group for groups.
* @property {string[]} members [Output Only] A list of URLs to User resources who belong to the group. Users may only be members of groups in the same project.
* @property {string} name Name of the resource; provided by the client when the resource is created.
* @property {string} selfLink [Output Only] Server defined URL for the resource.
*/
/**
* @typedef GroupList
* @memberOf! clouduseraccounts(vm_alpha)
* @type object
* @property {string} id [Output Only] Unique identifier for the resource; defined by the server.
* @property {clouduseraccounts(vm_alpha).Group[]} items [Output Only] A list of Group resources.
* @property {string} kind [Output Only] Type of resource. Always clouduseraccounts#groupList for lists of groups.
* @property {string} nextPageToken [Output Only] A token used to continue a truncated list request.
* @property {string} selfLink [Output Only] Server defined URL for this resource.
*/
/**
* @typedef GroupsAddMemberRequest
* @memberOf! clouduseraccounts(vm_alpha)
* @type object
* @property {string[]} users Fully-qualified URLs of the User resources to add.
*/
/**
* @typedef GroupsRemoveMemberRequest
* @memberOf! clouduseraccounts(vm_alpha)
* @type object
* @property {string[]} users Fully-qualified URLs of the User resources to remove.
*/
/**
* @typedef LinuxAccountViews
* @memberOf! clouduseraccounts(vm_alpha)
* @type object
* @property {clouduseraccounts(vm_alpha).LinuxGroupView[]} groupViews [Output Only] A list of all groups within a project.
* @property {string} kind [Output Only] Type of the resource. Always clouduseraccounts#linuxAccountViews for Linux resources.
* @property {clouduseraccounts(vm_alpha).LinuxUserView[]} userViews [Output Only] A list of all users within a project.
*/
/**
* @typedef LinuxGetAuthorizedKeysViewResponse
* @memberOf! clouduseraccounts(vm_alpha)
* @type object
* @property {clouduseraccounts(vm_alpha).AuthorizedKeysView} resource [Output Only] A list of authorized public keys for a user.
*/
/**
* @typedef LinuxGetLinuxAccountViewsResponse
* @memberOf! clouduseraccounts(vm_alpha)
* @type object
* @property {clouduseraccounts(vm_alpha).LinuxAccountViews} resource [Output Only] A list of authorized user accounts and groups.
*/
/**
* @typedef LinuxGroupView
* @memberOf! clouduseraccounts(vm_alpha)
* @type object
* @property {integer} gid [Output Only] The Group ID.
* @property {string} groupName [Output Only] Group name.
* @property {string[]} members [Output Only] List of user accounts that belong to the group.
*/
/**
* @typedef LinuxUserView
* @memberOf! clouduseraccounts(vm_alpha)
* @type object
* @property {string} gecos [Output Only] The GECOS (user information) entry for this account.
* @property {integer} gid [Output Only] User's default group ID.
* @property {string} homeDirectory [Output Only] The path to the home directory for this account.
* @property {string} shell [Output Only] The path to the login shell for this account.
* @property {integer} uid [Output Only] User ID.
* @property {string} username [Output Only] The username of the account.
*/
/**
* @typedef LogConfig
* @memberOf! clouduseraccounts(vm_alpha)
* @type object
* @property {clouduseraccounts(vm_alpha).LogConfigCounterOptions} counter Counter options.
*/
/**
* @typedef LogConfigCounterOptions
* @memberOf! clouduseraccounts(vm_alpha)
* @type object
* @property {string} field The field value to attribute.
* @property {string} metric The metric to update.
*/
/**
* @typedef Operation
* @memberOf! clouduseraccounts(vm_alpha)
* @type object
* @property {string} clientOperationId [Output Only] Reserved for future use.
* @property {string} creationTimestamp [Output Only] Creation timestamp in RFC3339 text format.
* @property {string} description [Output Only] A textual description of the operation, which is set when the operation is created.
* @property {string} endTime [Output Only] The time that this operation was completed. This value is in RFC3339 text format.
* @property {object} error [Output Only] If errors are generated during processing of the operation, this field will be populated.
* @property {string} httpErrorMessage [Output Only] If the operation fails, this field contains the HTTP error message that was returned, such as NOT FOUND.
* @property {integer} httpErrorStatusCode [Output Only] If the operation fails, this field contains the HTTP error status code that was returned. For example, a 404 means the resource was not found.
* @property {string} id [Output Only] The unique identifier for the resource. This identifier is defined by the server.
* @property {string} insertTime [Output Only] The time that this operation was requested. This value is in RFC3339 text format.
* @property {string} kind [Output Only] Type of the resource. Always compute#operation for Operation resources.
* @property {string} name [Output Only] Name of the resource.
* @property {string} operationType [Output Only] The type of operation, such as insert, update, or delete, and so on.
* @property {integer} progress [Output Only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess when the operation will be complete. This number should monotonically increase as the operation progresses.
* @property {string} region [Output Only] The URL of the region where the operation resides. Only available when performing regional operations.
* @property {string} selfLink [Output Only] Server-defined URL for the resource.
* @property {string} startTime [Output Only] The time that this operation was started by the server. This value is in RFC3339 text format.
* @property {string} status [Output Only] The status of the operation, which can be one of the following: PENDING, RUNNING, or DONE.
* @property {string} statusMessage [Output Only] An optional textual description of the current status of the operation.
* @property {string} targetId [Output Only] The unique target ID, which identifies a specific incarnation of the target resource.
* @property {string} targetLink [Output Only] The URL of the resource that the operation modifies.
* @property {string} user [Output Only] User who requested the operation, for example: user@example.com.
* @property {object[]} warnings [Output Only] If warning messages are generated during processing of the operation, this field will be populated.
* @property {string} zone [Output Only] The URL of the zone where the operation resides. Only available when performing per-zone operations.
*/
/**
* @typedef OperationList
* @memberOf! clouduseraccounts(vm_alpha)
* @type object
* @property {string} id [Output Only] The unique identifier for the resource. This identifier is defined by the server.
* @property {clouduseraccounts(vm_alpha).Operation[]} items [Output Only] A list of Operation resources.
* @property {string} kind [Output Only] Type of resource. Always compute#operations for Operations resource.
* @property {string} nextPageToken [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.
* @property {string} selfLink [Output Only] Server-defined URL for this resource.
*/
/**
* @typedef Policy
* @memberOf! clouduseraccounts(vm_alpha)
* @type object
* @property {clouduseraccounts(vm_alpha).AuditConfig[]} auditConfigs Specifies audit logging configs for "data access". "data access": generally refers to data reads/writes and admin reads. "admin activity": generally refers to admin writes.
Note: `AuditConfig` doesn't apply to "admin activity", which always enables audit logging.
* @property {clouduseraccounts(vm_alpha).Binding[]} bindings Associates a list of `members` to a `role`. Multiple `bindings` must not be specified for the same `role`. `bindings` with no members will result in an error.
* @property {string} etag `etag` is used for optimistic concurrency control as a way to help prevent simultaneous updates of a policy from overwriting each other. It is strongly suggested that systems make use of the `etag` in the read-modify-write cycle to perform policy updates in order to avoid race conditions: An `etag` is returned in the response to `getIamPolicy`, and systems are expected to put that etag in the request to `setIamPolicy` to ensure that their change will be applied to the same version of the policy.
If no `etag` is provided in the call to `setIamPolicy`, then the existing policy is overwritten blindly.
* @property {boolean} iamOwned
* @property {clouduseraccounts(vm_alpha).Rule[]} rules If more than one rule is specified, the rules are applied in the following manner: - All matching LOG rules are always applied. - If any DENY/DENY_WITH_LOG rule matches, permission is denied. Logging will be applied if one or more matching rule requires logging. - Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is granted. Logging will be applied if one or more matching rule requires logging. - Otherwise, if no rule applies, permission is denied.
* @property {integer} version Version of the `Policy`. The default version is 0.
*/
/**
* @typedef PublicKey
* @memberOf! clouduseraccounts(vm_alpha)
* @type object
* @property {string} creationTimestamp [Output Only] Creation timestamp in RFC3339 text format.
* @property {string} description An optional textual description of the resource; provided by the client when the resource is created.
* @property {string} expirationTimestamp Optional expiration timestamp. If provided, the timestamp must be in RFC3339 text format. If not provided, the public key never expires.
* @property {string} fingerprint [Output Only] The fingerprint of the key is defined by RFC4716 to be the MD5 digest of the public key.
* @property {string} key Public key text in SSH format, defined by RFC4253 section 6.6.
*/
/**
* @typedef Rule
* @memberOf! clouduseraccounts(vm_alpha)
* @type object
* @property {string} action Required
* @property {clouduseraccounts(vm_alpha).Condition[]} conditions Additional restrictions that must be met
* @property {string} description Human-readable description of the rule.
* @property {string[]} ins The rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is in this set of entries.
* @property {clouduseraccounts(vm_alpha).LogConfig[]} logConfigs The config returned to callers of tech.iam.IAM.CheckPolicy for any entries that match the LOG action.
* @property {string[]} notIns The rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is not in this set of entries.
* @property {string[]} permissions A permission is a string of form '..' (e.g., 'storage.buckets.list'). A value of '*' matches all permissions, and a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs.
*/
/**
* @typedef TestPermissionsRequest
* @memberOf! clouduseraccounts(vm_alpha)
* @type object
* @property {string[]} permissions The set of permissions to check for the 'resource'. Permissions with wildcards (such as '*' or 'storage.*') are not allowed.
*/
/**
* @typedef TestPermissionsResponse
* @memberOf! clouduseraccounts(vm_alpha)
* @type object
* @property {string[]} permissions A subset of `TestPermissionsRequest.permissions` that the caller is allowed.
*/
/**
* @typedef User
* @memberOf! clouduseraccounts(vm_alpha)
* @type object
* @property {string} creationTimestamp [Output Only] Creation timestamp in RFC3339 text format.
* @property {string} description An optional textual description of the resource; provided by the client when the resource is created.
* @property {string[]} groups [Output Only] A list of URLs to Group resources who contain the user. Users are only members of groups in the same project.
* @property {string} id [Output Only] Unique identifier for the resource; defined by the server.
* @property {string} kind [Output Only] Type of the resource. Always clouduseraccounts#user for users.
* @property {string} name Name of the resource; provided by the client when the resource is created.
* @property {string} owner Email address of account's owner. This account will be validated to make sure it exists. The email can belong to any domain, but it must be tied to a Google account.
* @property {clouduseraccounts(vm_alpha).PublicKey[]} publicKeys [Output Only] Public keys that this user may use to login.
* @property {string} selfLink [Output Only] Server defined URL for the resource.
*/
/**
* @typedef UserList
* @memberOf! clouduseraccounts(vm_alpha)
* @type object
* @property {string} id [Output Only] Unique identifier for the resource; defined by the server.
* @property {clouduseraccounts(vm_alpha).User[]} items [Output Only] A list of User resources.
* @property {string} kind [Output Only] Type of resource. Always clouduseraccounts#userList for lists of users.
* @property {string} nextPageToken [Output Only] A token used to continue a truncated list request.
* @property {string} selfLink [Output Only] Server defined URL for this resource.
*/
module.exports = Clouduseraccounts;
|
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* Cloud User Accounts API
*
* Creates and manages users and groups for accessing Google Compute Engine virtual machines.
*
* @example
* var google = require('googleapis');
* var clouduseraccounts = google.clouduseraccounts('vm_beta');
*
* @namespace clouduseraccounts
* @type {Function}
* @version vm_beta
* @variation vm_beta
* @param {object=} options Options for Clouduseraccounts
*/
function Clouduseraccounts(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.globalAccountsOperations = {
/**
* clouduseraccounts.globalAccountsOperations.delete
*
* @desc Deletes the specified operation resource.
*
* @alias clouduseraccounts.globalAccountsOperations.delete
* @memberOf! clouduseraccounts(vm_beta)
*
* @param {object} params Parameters for request
* @param {string} params.operation Name of the Operations resource to delete.
* @param {string} params.project Project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/vm_beta/projects/{project}/global/operations/{operation}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['project', 'operation'],
pathParams: ['operation', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.globalAccountsOperations.get
*
* @desc Retrieves the specified operation resource.
*
* @alias clouduseraccounts.globalAccountsOperations.get
* @memberOf! clouduseraccounts(vm_beta)
*
* @param {object} params Parameters for request
* @param {string} params.operation Name of the Operations resource to return.
* @param {string} params.project Project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/vm_beta/projects/{project}/global/operations/{operation}',
method: 'GET'
}, options),
params: params,
requiredParams: ['project', 'operation'],
pathParams: ['operation', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.globalAccountsOperations.list
*
* @desc Retrieves the list of operation resources contained within the specified project.
*
* @alias clouduseraccounts.globalAccountsOperations.list
* @memberOf! clouduseraccounts(vm_beta)
*
* @param {object} params Parameters for request
* @param {string=} params.filter Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string. The field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field. For example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance. Compute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values. The Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.
* @param {integer=} params.maxResults The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.
* @param {string=} params.orderBy Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using orderBy="creationTimestamp desc". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by name or creationTimestamp desc is supported.
* @param {string=} params.pageToken Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.
* @param {string} params.project Project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/vm_beta/projects/{project}/global/operations',
method: 'GET'
}, options),
params: params,
requiredParams: ['project'],
pathParams: ['project'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.groups = {
/**
* clouduseraccounts.groups.addMember
*
* @desc Adds users to the specified group.
*
* @alias clouduseraccounts.groups.addMember
* @memberOf! clouduseraccounts(vm_beta)
*
* @param {object} params Parameters for request
* @param {string} params.groupName Name of the group for this request.
* @param {string} params.project Project ID for this request.
* @param {clouduseraccounts(vm_beta).GroupsAddMemberRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
addMember: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/vm_beta/projects/{project}/global/groups/{groupName}/addMember',
method: 'POST'
}, options),
params: params,
requiredParams: ['project', 'groupName'],
pathParams: ['groupName', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.groups.delete
*
* @desc Deletes the specified Group resource.
*
* @alias clouduseraccounts.groups.delete
* @memberOf! clouduseraccounts(vm_beta)
*
* @param {object} params Parameters for request
* @param {string} params.groupName Name of the Group resource to delete.
* @param {string} params.project Project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/vm_beta/projects/{project}/global/groups/{groupName}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['project', 'groupName'],
pathParams: ['groupName', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.groups.get
*
* @desc Returns the specified Group resource.
*
* @alias clouduseraccounts.groups.get
* @memberOf! clouduseraccounts(vm_beta)
*
* @param {object} params Parameters for request
* @param {string} params.groupName Name of the Group resource to return.
* @param {string} params.project Project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/vm_beta/projects/{project}/global/groups/{groupName}',
method: 'GET'
}, options),
params: params,
requiredParams: ['project', 'groupName'],
pathParams: ['groupName', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.groups.insert
*
* @desc Creates a Group resource in the specified project using the data included in the request.
*
* @alias clouduseraccounts.groups.insert
* @memberOf! clouduseraccounts(vm_beta)
*
* @param {object} params Parameters for request
* @param {string} params.project Project ID for this request.
* @param {clouduseraccounts(vm_beta).Group} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/vm_beta/projects/{project}/global/groups',
method: 'POST'
}, options),
params: params,
requiredParams: ['project'],
pathParams: ['project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.groups.list
*
* @desc Retrieves the list of groups contained within the specified project.
*
* @alias clouduseraccounts.groups.list
* @memberOf! clouduseraccounts(vm_beta)
*
* @param {object} params Parameters for request
* @param {string=} params.filter Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string. The field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field. For example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance. Compute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values. The Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.
* @param {integer=} params.maxResults The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.
* @param {string=} params.orderBy Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using orderBy="creationTimestamp desc". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by name or creationTimestamp desc is supported.
* @param {string=} params.pageToken Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.
* @param {string} params.project Project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/vm_beta/projects/{project}/global/groups',
method: 'GET'
}, options),
params: params,
requiredParams: ['project'],
pathParams: ['project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.groups.removeMember
*
* @desc Removes users from the specified group.
*
* @alias clouduseraccounts.groups.removeMember
* @memberOf! clouduseraccounts(vm_beta)
*
* @param {object} params Parameters for request
* @param {string} params.groupName Name of the group for this request.
* @param {string} params.project Project ID for this request.
* @param {clouduseraccounts(vm_beta).GroupsRemoveMemberRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
removeMember: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/vm_beta/projects/{project}/global/groups/{groupName}/removeMember',
method: 'POST'
}, options),
params: params,
requiredParams: ['project', 'groupName'],
pathParams: ['groupName', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.linux = {
/**
* clouduseraccounts.linux.getAuthorizedKeysView
*
* @desc Returns a list of authorized public keys for a specific user account.
*
* @alias clouduseraccounts.linux.getAuthorizedKeysView
* @memberOf! clouduseraccounts(vm_beta)
*
* @param {object} params Parameters for request
* @param {string} params.instance The fully-qualified URL of the virtual machine requesting the view.
* @param {boolean=} params.login Whether the view was requested as part of a user-initiated login.
* @param {string} params.project Project ID for this request.
* @param {string} params.user The user account for which you want to get a list of authorized public keys.
* @param {string} params.zone Name of the zone for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
getAuthorizedKeysView: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/vm_beta/projects/{project}/zones/{zone}/authorizedKeysView/{user}',
method: 'POST'
}, options),
params: params,
requiredParams: ['project', 'zone', 'user', 'instance'],
pathParams: ['project', 'user', 'zone'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.linux.getLinuxAccountViews
*
* @desc Retrieves a list of user accounts for an instance within a specific project.
*
* @alias clouduseraccounts.linux.getLinuxAccountViews
* @memberOf! clouduseraccounts(vm_beta)
*
* @param {object} params Parameters for request
* @param {string=} params.filter Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string. The field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field. For example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance. Compute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values. The Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.
* @param {string} params.instance The fully-qualified URL of the virtual machine requesting the views.
* @param {integer=} params.maxResults The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.
* @param {string=} params.orderBy Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using orderBy="creationTimestamp desc". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by name or creationTimestamp desc is supported.
* @param {string=} params.pageToken Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.
* @param {string} params.project Project ID for this request.
* @param {string} params.zone Name of the zone for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
getLinuxAccountViews: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/vm_beta/projects/{project}/zones/{zone}/linuxAccountViews',
method: 'POST'
}, options),
params: params,
requiredParams: ['project', 'zone', 'instance'],
pathParams: ['project', 'zone'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.users = {
/**
* clouduseraccounts.users.addPublicKey
*
* @desc Adds a public key to the specified User resource with the data included in the request.
*
* @alias clouduseraccounts.users.addPublicKey
* @memberOf! clouduseraccounts(vm_beta)
*
* @param {object} params Parameters for request
* @param {string} params.project Project ID for this request.
* @param {string} params.user Name of the user for this request.
* @param {clouduseraccounts(vm_beta).PublicKey} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
addPublicKey: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/vm_beta/projects/{project}/global/users/{user}/addPublicKey',
method: 'POST'
}, options),
params: params,
requiredParams: ['project', 'user'],
pathParams: ['project', 'user'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.users.delete
*
* @desc Deletes the specified User resource.
*
* @alias clouduseraccounts.users.delete
* @memberOf! clouduseraccounts(vm_beta)
*
* @param {object} params Parameters for request
* @param {string} params.project Project ID for this request.
* @param {string} params.user Name of the user resource to delete.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/vm_beta/projects/{project}/global/users/{user}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['project', 'user'],
pathParams: ['project', 'user'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.users.get
*
* @desc Returns the specified User resource.
*
* @alias clouduseraccounts.users.get
* @memberOf! clouduseraccounts(vm_beta)
*
* @param {object} params Parameters for request
* @param {string} params.project Project ID for this request.
* @param {string} params.user Name of the user resource to return.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/vm_beta/projects/{project}/global/users/{user}',
method: 'GET'
}, options),
params: params,
requiredParams: ['project', 'user'],
pathParams: ['project', 'user'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.users.insert
*
* @desc Creates a User resource in the specified project using the data included in the request.
*
* @alias clouduseraccounts.users.insert
* @memberOf! clouduseraccounts(vm_beta)
*
* @param {object} params Parameters for request
* @param {string} params.project Project ID for this request.
* @param {clouduseraccounts(vm_beta).User} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/vm_beta/projects/{project}/global/users',
method: 'POST'
}, options),
params: params,
requiredParams: ['project'],
pathParams: ['project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.users.list
*
* @desc Retrieves a list of users contained within the specified project.
*
* @alias clouduseraccounts.users.list
* @memberOf! clouduseraccounts(vm_beta)
*
* @param {object} params Parameters for request
* @param {string=} params.filter Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string. The field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field. For example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance. Compute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values. The Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.
* @param {integer=} params.maxResults The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.
* @param {string=} params.orderBy Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using orderBy="creationTimestamp desc". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by name or creationTimestamp desc is supported.
* @param {string=} params.pageToken Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.
* @param {string} params.project Project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/vm_beta/projects/{project}/global/users',
method: 'GET'
}, options),
params: params,
requiredParams: ['project'],
pathParams: ['project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* clouduseraccounts.users.removePublicKey
*
* @desc Removes the specified public key from the user.
*
* @alias clouduseraccounts.users.removePublicKey
* @memberOf! clouduseraccounts(vm_beta)
*
* @param {object} params Parameters for request
* @param {string} params.fingerprint The fingerprint of the public key to delete. Public keys are identified by their fingerprint, which is defined by RFC4716 to be the MD5 digest of the public key.
* @param {string} params.project Project ID for this request.
* @param {string} params.user Name of the user for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
removePublicKey: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/clouduseraccounts/vm_beta/projects/{project}/global/users/{user}/removePublicKey',
method: 'POST'
}, options),
params: params,
requiredParams: ['project', 'user', 'fingerprint'],
pathParams: ['project', 'user'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
}
/**
* @typedef AuthorizedKeysView
* @memberOf! clouduseraccounts(vm_beta)
* @type object
* @property {string[]} keys [Output Only] The list of authorized public keys in SSH format.
* @property {boolean} sudoer [Output Only] Whether the user has the ability to elevate on the instance that requested the authorized keys.
*/
/**
* @typedef Group
* @memberOf! clouduseraccounts(vm_beta)
* @type object
* @property {string} creationTimestamp [Output Only] Creation timestamp in RFC3339 text format.
* @property {string} description An optional textual description of the resource; provided by the client when the resource is created.
* @property {string} id [Output Only] Unique identifier for the resource; defined by the server.
* @property {string} kind [Output Only] Type of the resource. Always clouduseraccounts#group for groups.
* @property {string[]} members [Output Only] A list of URLs to User resources who belong to the group. Users may only be members of groups in the same project.
* @property {string} name Name of the resource; provided by the client when the resource is created.
* @property {string} selfLink [Output Only] Server defined URL for the resource.
*/
/**
* @typedef GroupList
* @memberOf! clouduseraccounts(vm_beta)
* @type object
* @property {string} id [Output Only] Unique identifier for the resource; defined by the server.
* @property {clouduseraccounts(vm_beta).Group[]} items [Output Only] A list of Group resources.
* @property {string} kind [Output Only] Type of resource. Always clouduseraccounts#groupList for lists of groups.
* @property {string} nextPageToken [Output Only] A token used to continue a truncated list request.
* @property {string} selfLink [Output Only] Server defined URL for this resource.
*/
/**
* @typedef GroupsAddMemberRequest
* @memberOf! clouduseraccounts(vm_beta)
* @type object
* @property {string[]} users Fully-qualified URLs of the User resources to add.
*/
/**
* @typedef GroupsRemoveMemberRequest
* @memberOf! clouduseraccounts(vm_beta)
* @type object
* @property {string[]} users Fully-qualified URLs of the User resources to remove.
*/
/**
* @typedef LinuxAccountViews
* @memberOf! clouduseraccounts(vm_beta)
* @type object
* @property {clouduseraccounts(vm_beta).LinuxGroupView[]} groupViews [Output Only] A list of all groups within a project.
* @property {string} kind [Output Only] Type of the resource. Always clouduseraccounts#linuxAccountViews for Linux resources.
* @property {clouduseraccounts(vm_beta).LinuxUserView[]} userViews [Output Only] A list of all users within a project.
*/
/**
* @typedef LinuxGetAuthorizedKeysViewResponse
* @memberOf! clouduseraccounts(vm_beta)
* @type object
* @property {clouduseraccounts(vm_beta).AuthorizedKeysView} resource [Output Only] A list of authorized public keys for a user.
*/
/**
* @typedef LinuxGetLinuxAccountViewsResponse
* @memberOf! clouduseraccounts(vm_beta)
* @type object
* @property {clouduseraccounts(vm_beta).LinuxAccountViews} resource [Output Only] A list of authorized user accounts and groups.
*/
/**
* @typedef LinuxGroupView
* @memberOf! clouduseraccounts(vm_beta)
* @type object
* @property {integer} gid [Output Only] The Group ID.
* @property {string} groupName [Output Only] Group name.
* @property {string[]} members [Output Only] List of user accounts that belong to the group.
*/
/**
* @typedef LinuxUserView
* @memberOf! clouduseraccounts(vm_beta)
* @type object
* @property {string} gecos [Output Only] The GECOS (user information) entry for this account.
* @property {integer} gid [Output Only] User's default group ID.
* @property {string} homeDirectory [Output Only] The path to the home directory for this account.
* @property {string} shell [Output Only] The path to the login shell for this account.
* @property {integer} uid [Output Only] User ID.
* @property {string} username [Output Only] The username of the account.
*/
/**
* @typedef Operation
* @memberOf! clouduseraccounts(vm_beta)
* @type object
* @property {string} clientOperationId [Output Only] Reserved for future use.
* @property {string} creationTimestamp [Output Only] Creation timestamp in RFC3339 text format.
* @property {string} description [Output Only] A textual description of the operation, which is set when the operation is created.
* @property {string} endTime [Output Only] The time that this operation was completed. This value is in RFC3339 text format.
* @property {object} error [Output Only] If errors are generated during processing of the operation, this field will be populated.
* @property {string} httpErrorMessage [Output Only] If the operation fails, this field contains the HTTP error message that was returned, such as NOT FOUND.
* @property {integer} httpErrorStatusCode [Output Only] If the operation fails, this field contains the HTTP error status code that was returned. For example, a 404 means the resource was not found.
* @property {string} id [Output Only] The unique identifier for the resource. This identifier is defined by the server.
* @property {string} insertTime [Output Only] The time that this operation was requested. This value is in RFC3339 text format.
* @property {string} kind [Output Only] Type of the resource. Always compute#operation for Operation resources.
* @property {string} name [Output Only] Name of the resource.
* @property {string} operationType [Output Only] The type of operation, such as insert, update, or delete, and so on.
* @property {integer} progress [Output Only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess when the operation will be complete. This number should monotonically increase as the operation progresses.
* @property {string} region [Output Only] The URL of the region where the operation resides. Only available when performing regional operations.
* @property {string} selfLink [Output Only] Server-defined URL for the resource.
* @property {string} startTime [Output Only] The time that this operation was started by the server. This value is in RFC3339 text format.
* @property {string} status [Output Only] The status of the operation, which can be one of the following: PENDING, RUNNING, or DONE.
* @property {string} statusMessage [Output Only] An optional textual description of the current status of the operation.
* @property {string} targetId [Output Only] The unique target ID, which identifies a specific incarnation of the target resource.
* @property {string} targetLink [Output Only] The URL of the resource that the operation modifies.
* @property {string} user [Output Only] User who requested the operation, for example: user@example.com.
* @property {object[]} warnings [Output Only] If warning messages are generated during processing of the operation, this field will be populated.
* @property {string} zone [Output Only] The URL of the zone where the operation resides. Only available when performing per-zone operations.
*/
/**
* @typedef OperationList
* @memberOf! clouduseraccounts(vm_beta)
* @type object
* @property {string} id [Output Only] The unique identifier for the resource. This identifier is defined by the server.
* @property {clouduseraccounts(vm_beta).Operation[]} items [Output Only] A list of Operation resources.
* @property {string} kind [Output Only] Type of resource. Always compute#operations for Operations resource.
* @property {string} nextPageToken [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.
* @property {string} selfLink [Output Only] Server-defined URL for this resource.
*/
/**
* @typedef PublicKey
* @memberOf! clouduseraccounts(vm_beta)
* @type object
* @property {string} creationTimestamp [Output Only] Creation timestamp in RFC3339 text format.
* @property {string} description An optional textual description of the resource; provided by the client when the resource is created.
* @property {string} expirationTimestamp Optional expiration timestamp. If provided, the timestamp must be in RFC3339 text format. If not provided, the public key never expires.
* @property {string} fingerprint [Output Only] The fingerprint of the key is defined by RFC4716 to be the MD5 digest of the public key.
* @property {string} key Public key text in SSH format, defined by RFC4253 section 6.6.
*/
/**
* @typedef User
* @memberOf! clouduseraccounts(vm_beta)
* @type object
* @property {string} creationTimestamp [Output Only] Creation timestamp in RFC3339 text format.
* @property {string} description An optional textual description of the resource; provided by the client when the resource is created.
* @property {string[]} groups [Output Only] A list of URLs to Group resources who contain the user. Users are only members of groups in the same project.
* @property {string} id [Output Only] Unique identifier for the resource; defined by the server.
* @property {string} kind [Output Only] Type of the resource. Always clouduseraccounts#user for users.
* @property {string} name Name of the resource; provided by the client when the resource is created.
* @property {string} owner Email address of account's owner. This account will be validated to make sure it exists. The email can belong to any domain, but it must be tied to a Google account.
* @property {clouduseraccounts(vm_beta).PublicKey[]} publicKeys [Output Only] Public keys that this user may use to login.
* @property {string} selfLink [Output Only] Server defined URL for the resource.
*/
/**
* @typedef UserList
* @memberOf! clouduseraccounts(vm_beta)
* @type object
* @property {string} id [Output Only] Unique identifier for the resource; defined by the server.
* @property {clouduseraccounts(vm_beta).User[]} items [Output Only] A list of User resources.
* @property {string} kind [Output Only] Type of resource. Always clouduseraccounts#userList for lists of users.
* @property {string} nextPageToken [Output Only] A token used to continue a truncated list request.
* @property {string} selfLink [Output Only] Server defined URL for this resource.
*/
module.exports = Clouduseraccounts;
|
| File | Statements | Branches | Functions | Lines | |||||
|---|---|---|---|---|---|---|---|---|---|
| v2sandbox.js | 4.12% | (4 / 97) | 0% | (0 / 62) | 0% | (0 / 16) | 4.12% | (4 / 97) |
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* Content API for Shopping
*
* Manages product items, inventory, and Merchant Center accounts for Google Shopping.
*
* @example
* var google = require('googleapis');
* var content = google.content('v2sandbox');
*
* @namespace content
* @type {Function}
* @version v2sandbox
* @variation v2sandbox
* @param {object=} options Options for Content
*/
function Content(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.orders = {
/**
* content.orders.acknowledge
*
* @desc Marks an order as acknowledged. This method can only be called for non-multi-client accounts.
*
* @alias content.orders.acknowledge
* @memberOf! content(v2sandbox)
*
* @param {object} params Parameters for request
* @param {string} params.merchantId The ID of the managing account.
* @param {string} params.orderId The ID of the order.
* @param {content(v2sandbox).OrdersAcknowledgeRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
acknowledge: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/content/v2sandbox/{merchantId}/orders/{orderId}/acknowledge',
method: 'POST'
}, options),
params: params,
requiredParams: ['merchantId', 'orderId'],
pathParams: ['merchantId', 'orderId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* content.orders.advancetestorder
*
* @desc Sandbox only. Moves a test order from state "inProgress" to state "pendingShipment". This method can only be called for non-multi-client accounts.
*
* @alias content.orders.advancetestorder
* @memberOf! content(v2sandbox)
*
* @param {object} params Parameters for request
* @param {string} params.merchantId The ID of the managing account.
* @param {string} params.orderId The ID of the test order to modify.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
advancetestorder: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/content/v2sandbox/{merchantId}/testorders/{orderId}/advance',
method: 'POST'
}, options),
params: params,
requiredParams: ['merchantId', 'orderId'],
pathParams: ['merchantId', 'orderId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* content.orders.cancel
*
* @desc Cancels all line items in an order. This method can only be called for non-multi-client accounts.
*
* @alias content.orders.cancel
* @memberOf! content(v2sandbox)
*
* @param {object} params Parameters for request
* @param {string} params.merchantId The ID of the managing account.
* @param {string} params.orderId The ID of the order to cancel.
* @param {content(v2sandbox).OrdersCancelRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
cancel: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/content/v2sandbox/{merchantId}/orders/{orderId}/cancel',
method: 'POST'
}, options),
params: params,
requiredParams: ['merchantId', 'orderId'],
pathParams: ['merchantId', 'orderId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* content.orders.cancellineitem
*
* @desc Cancels a line item. This method can only be called for non-multi-client accounts.
*
* @alias content.orders.cancellineitem
* @memberOf! content(v2sandbox)
*
* @param {object} params Parameters for request
* @param {string} params.merchantId The ID of the managing account.
* @param {string} params.orderId The ID of the order.
* @param {content(v2sandbox).OrdersCancelLineItemRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
cancellineitem: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/content/v2sandbox/{merchantId}/orders/{orderId}/cancelLineItem',
method: 'POST'
}, options),
params: params,
requiredParams: ['merchantId', 'orderId'],
pathParams: ['merchantId', 'orderId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* content.orders.createtestorder
*
* @desc Sandbox only. Creates a test order. This method can only be called for non-multi-client accounts.
*
* @alias content.orders.createtestorder
* @memberOf! content(v2sandbox)
*
* @param {object} params Parameters for request
* @param {string} params.merchantId The ID of the managing account.
* @param {content(v2sandbox).OrdersCreateTestOrderRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
createtestorder: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/content/v2sandbox/{merchantId}/testorders',
method: 'POST'
}, options),
params: params,
requiredParams: ['merchantId'],
pathParams: ['merchantId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* content.orders.custombatch
*
* @desc Retrieves or modifies multiple orders in a single request. This method can only be called for non-multi-client accounts.
*
* @alias content.orders.custombatch
* @memberOf! content(v2sandbox)
*
* @param {object} params Parameters for request
* @param {content(v2sandbox).OrdersCustomBatchRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
custombatch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/content/v2sandbox/orders/batch',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* content.orders.get
*
* @desc Retrieves an order from your Merchant Center account. This method can only be called for non-multi-client accounts.
*
* @alias content.orders.get
* @memberOf! content(v2sandbox)
*
* @param {object} params Parameters for request
* @param {string} params.merchantId The ID of the managing account.
* @param {string} params.orderId The ID of the order.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/content/v2sandbox/{merchantId}/orders/{orderId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['merchantId', 'orderId'],
pathParams: ['merchantId', 'orderId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* content.orders.getbymerchantorderid
*
* @desc Retrieves an order using merchant order id. This method can only be called for non-multi-client accounts.
*
* @alias content.orders.getbymerchantorderid
* @memberOf! content(v2sandbox)
*
* @param {object} params Parameters for request
* @param {string} params.merchantId The ID of the managing account.
* @param {string} params.merchantOrderId The merchant order id to be looked for.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
getbymerchantorderid: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/content/v2sandbox/{merchantId}/ordersbymerchantid/{merchantOrderId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['merchantId', 'merchantOrderId'],
pathParams: ['merchantId', 'merchantOrderId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* content.orders.gettestordertemplate
*
* @desc Sandbox only. Retrieves an order template that can be used to quickly create a new order in sandbox. This method can only be called for non-multi-client accounts.
*
* @alias content.orders.gettestordertemplate
* @memberOf! content(v2sandbox)
*
* @param {object} params Parameters for request
* @param {string} params.merchantId The ID of the managing account.
* @param {string} params.templateName The name of the template to retrieve.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
gettestordertemplate: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/content/v2sandbox/{merchantId}/testordertemplates/{templateName}',
method: 'GET'
}, options),
params: params,
requiredParams: ['merchantId', 'templateName'],
pathParams: ['merchantId', 'templateName'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* content.orders.list
*
* @desc Lists the orders in your Merchant Center account. This method can only be called for non-multi-client accounts.
*
* @alias content.orders.list
* @memberOf! content(v2sandbox)
*
* @param {object} params Parameters for request
* @param {boolean=} params.acknowledged Obtains orders that match the acknowledgement status. When set to true, obtains orders that have been acknowledged. When false, obtains orders that have not been acknowledged. We recommend using this filter set to false, in conjunction with the acknowledge call, such that only un-acknowledged orders are returned.
* @param {integer=} params.maxResults The maximum number of orders to return in the response, used for paging. The default value is 25 orders per page, and the maximum allowed value is 250 orders per page. Known issue: All List calls will return all Orders without limit regardless of the value of this field.
* @param {string} params.merchantId The ID of the managing account.
* @param {string=} params.orderBy The ordering of the returned list. The only supported value are placedDate desc and placedDate asc for now, which returns orders sorted by placement date. "placedDate desc" stands for listing orders by placement date, from oldest to most recent. "placedDate asc" stands for listing orders by placement date, from most recent to oldest. In future releases we'll support other sorting criteria.
* @param {string=} params.pageToken The token returned by the previous request.
* @param {string=} params.placedDateEnd Obtains orders placed before this date (exclusively), in ISO 8601 format.
* @param {string=} params.placedDateStart Obtains orders placed after this date (inclusively), in ISO 8601 format.
* @param {string=} params.statuses Obtains orders that match any of the specified statuses. Multiple values can be specified with comma separation. Additionally, please note that active is a shortcut for pendingShipment and partiallyShipped, and completed is a shortcut for shipped , partiallyDelivered, delivered, partiallyReturned, returned, and canceled.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/content/v2sandbox/{merchantId}/orders',
method: 'GET'
}, options),
params: params,
requiredParams: ['merchantId'],
pathParams: ['merchantId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* content.orders.refund
*
* @desc Refund a portion of the order, up to the full amount paid. This method can only be called for non-multi-client accounts.
*
* @alias content.orders.refund
* @memberOf! content(v2sandbox)
*
* @param {object} params Parameters for request
* @param {string} params.merchantId The ID of the managing account.
* @param {string} params.orderId The ID of the order to refund.
* @param {content(v2sandbox).OrdersRefundRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
refund: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/content/v2sandbox/{merchantId}/orders/{orderId}/refund',
method: 'POST'
}, options),
params: params,
requiredParams: ['merchantId', 'orderId'],
pathParams: ['merchantId', 'orderId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* content.orders.returnlineitem
*
* @desc Returns a line item. This method can only be called for non-multi-client accounts.
*
* @alias content.orders.returnlineitem
* @memberOf! content(v2sandbox)
*
* @param {object} params Parameters for request
* @param {string} params.merchantId The ID of the managing account.
* @param {string} params.orderId The ID of the order.
* @param {content(v2sandbox).OrdersReturnLineItemRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
returnlineitem: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/content/v2sandbox/{merchantId}/orders/{orderId}/returnLineItem',
method: 'POST'
}, options),
params: params,
requiredParams: ['merchantId', 'orderId'],
pathParams: ['merchantId', 'orderId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* content.orders.shiplineitems
*
* @desc Marks line item(s) as shipped. This method can only be called for non-multi-client accounts.
*
* @alias content.orders.shiplineitems
* @memberOf! content(v2sandbox)
*
* @param {object} params Parameters for request
* @param {string} params.merchantId The ID of the managing account.
* @param {string} params.orderId The ID of the order.
* @param {content(v2sandbox).OrdersShipLineItemsRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
shiplineitems: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/content/v2sandbox/{merchantId}/orders/{orderId}/shipLineItems',
method: 'POST'
}, options),
params: params,
requiredParams: ['merchantId', 'orderId'],
pathParams: ['merchantId', 'orderId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* content.orders.updatemerchantorderid
*
* @desc Updates the merchant order ID for a given order. This method can only be called for non-multi-client accounts.
*
* @alias content.orders.updatemerchantorderid
* @memberOf! content(v2sandbox)
*
* @param {object} params Parameters for request
* @param {string} params.merchantId The ID of the managing account.
* @param {string} params.orderId The ID of the order.
* @param {content(v2sandbox).OrdersUpdateMerchantOrderIdRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
updatemerchantorderid: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/content/v2sandbox/{merchantId}/orders/{orderId}/updateMerchantOrderId',
method: 'POST'
}, options),
params: params,
requiredParams: ['merchantId', 'orderId'],
pathParams: ['merchantId', 'orderId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* content.orders.updateshipment
*
* @desc Updates a shipment's status, carrier, and/or tracking ID. This method can only be called for non-multi-client accounts.
*
* @alias content.orders.updateshipment
* @memberOf! content(v2sandbox)
*
* @param {object} params Parameters for request
* @param {string} params.merchantId The ID of the managing account.
* @param {string} params.orderId The ID of the order.
* @param {content(v2sandbox).OrdersUpdateShipmentRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
updateshipment: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/content/v2sandbox/{merchantId}/orders/{orderId}/updateShipment',
method: 'POST'
}, options),
params: params,
requiredParams: ['merchantId', 'orderId'],
pathParams: ['merchantId', 'orderId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
}
/**
* @typedef Error
* @memberOf! content(v2sandbox)
* @type object
* @property {string} domain The domain of the error.
* @property {string} message A description of the error.
* @property {string} reason The error code.
*/
/**
* @typedef Errors
* @memberOf! content(v2sandbox)
* @type object
* @property {integer} code The HTTP status of the first error in errors.
* @property {content(v2sandbox).Error[]} errors A list of errors.
* @property {string} message The message of the first error in errors.
*/
/**
* @typedef Order
* @memberOf! content(v2sandbox)
* @type object
* @property {boolean} acknowledged Whether the order was acknowledged.
* @property {string} channelType The channel type of the order: "purchaseOnGoogle" or "googleExpress".
* @property {content(v2sandbox).OrderCustomer} customer The details of the customer who placed the order.
* @property {content(v2sandbox).OrderDeliveryDetails} deliveryDetails The details for the delivery.
* @property {string} id The REST id of the order. Globally unique.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "content#order".
* @property {content(v2sandbox).OrderLineItem[]} lineItems Line items that are ordered.
* @property {string} merchantId
* @property {string} merchantOrderId Merchant-provided id of the order.
* @property {content(v2sandbox).Price} netAmount The net amount for the order. For example, if an order was originally for a grand total of $100 and a refund was issued for $20, the net amount will be $80.
* @property {content(v2sandbox).OrderPaymentMethod} paymentMethod The details of the payment method.
* @property {string} paymentStatus The status of the payment.
* @property {string} placedDate The date when the order was placed, in ISO 8601 format.
* @property {content(v2sandbox).OrderPromotion[]} promotions The details of the merchant provided promotions applied to the order. More details about the program are here.
* @property {content(v2sandbox).OrderRefund[]} refunds Refunds for the order.
* @property {content(v2sandbox).OrderShipment[]} shipments Shipments of the order.
* @property {content(v2sandbox).Price} shippingCost The total cost of shipping for all items.
* @property {content(v2sandbox).Price} shippingCostTax The tax for the total shipping cost.
* @property {string} shippingOption The requested shipping option.
* @property {string} status The status of the order.
*/
/**
* @typedef OrderAddress
* @memberOf! content(v2sandbox)
* @type object
* @property {string} country CLDR country code (e.g. "US").
* @property {string[]} fullAddress Strings representing the lines of the printed label for mailing the order, for example:
John Smith
1600 Amphitheatre Parkway
Mountain View, CA, 94043
United States
* @property {boolean} isPostOfficeBox Whether the address is a post office box.
* @property {string} locality City, town or commune. May also include dependent localities or sublocalities (e.g. neighborhoods or suburbs).
* @property {string} postalCode Postal Code or ZIP (e.g. "94043").
* @property {string} recipientName Name of the recipient.
* @property {string} region Top-level administrative subdivision of the country (e.g. "CA").
* @property {string[]} streetAddress Street-level part of the address.
*/
/**
* @typedef OrderCancellation
* @memberOf! content(v2sandbox)
* @type object
* @property {string} actor The actor that created the cancellation.
* @property {string} creationDate Date on which the cancellation has been created, in ISO 8601 format.
* @property {integer} quantity The quantity that was canceled.
* @property {string} reason The reason for the cancellation. Orders that are cancelled with a noInventory reason will lead to the removal of the product from POG until you make an update to that product. This will not affect your Shopping ads.
* @property {string} reasonText The explanation of the reason.
*/
/**
* @typedef OrderCustomer
* @memberOf! content(v2sandbox)
* @type object
* @property {string} email Email address of the customer.
* @property {boolean} explicitMarketingPreference If set, this indicates the user explicitly chose to opt in or out of providing marketing rights to the merchant. If unset, this indicates the user has already made this choice in a previous purchase, and was thus not shown the marketing right opt in/out checkbox during the checkout flow.
* @property {string} fullName Full name of the customer.
*/
/**
* @typedef OrderDeliveryDetails
* @memberOf! content(v2sandbox)
* @type object
* @property {content(v2sandbox).OrderAddress} address The delivery address
* @property {string} phoneNumber The phone number of the person receiving the delivery.
*/
/**
* @typedef OrderLineItem
* @memberOf! content(v2sandbox)
* @type object
* @property {content(v2sandbox).OrderCancellation[]} cancellations Cancellations of the line item.
* @property {string} id The id of the line item.
* @property {content(v2sandbox).Price} price Total price for the line item. For example, if two items for $10 are purchased, the total price will be $20.
* @property {content(v2sandbox).OrderLineItemProduct} product Product data from the time of the order placement.
* @property {integer} quantityCanceled Number of items canceled.
* @property {integer} quantityDelivered Number of items delivered.
* @property {integer} quantityOrdered Number of items ordered.
* @property {integer} quantityPending Number of items pending.
* @property {integer} quantityReturned Number of items returned.
* @property {integer} quantityShipped Number of items shipped.
* @property {content(v2sandbox).OrderLineItemReturnInfo} returnInfo Details of the return policy for the line item.
* @property {content(v2sandbox).OrderReturn[]} returns Returns of the line item.
* @property {content(v2sandbox).OrderLineItemShippingDetails} shippingDetails Details of the requested shipping for the line item.
* @property {content(v2sandbox).Price} tax Total tax amount for the line item. For example, if two items are purchased, and each have a cost tax of $2, the total tax amount will be $4.
*/
/**
* @typedef OrderLineItemProduct
* @memberOf! content(v2sandbox)
* @type object
* @property {string} brand Brand of the item.
* @property {string} channel The item's channel (online or local).
* @property {string} condition Condition or state of the item.
* @property {string} contentLanguage The two-letter ISO 639-1 language code for the item.
* @property {string} gtin Global Trade Item Number (GTIN) of the item.
* @property {string} id The REST id of the product.
* @property {string} imageLink URL of an image of the item.
* @property {string} itemGroupId Shared identifier for all variants of the same product.
* @property {string} mpn Manufacturer Part Number (MPN) of the item.
* @property {string} offerId An identifier of the item.
* @property {content(v2sandbox).Price} price Price of the item.
* @property {string} shownImage URL to the cached image shown to the user when order was placed.
* @property {string} targetCountry The CLDR territory code of the target country of the product.
* @property {string} title The title of the product.
* @property {content(v2sandbox).OrderLineItemProductVariantAttribute[]} variantAttributes Variant attributes for the item. These are dimensions of the product, such as color, gender, material, pattern, and size. You can find a comprehensive list of variant attributes here.
*/
/**
* @typedef OrderLineItemProductVariantAttribute
* @memberOf! content(v2sandbox)
* @type object
* @property {string} dimension The dimension of the variant.
* @property {string} value The value for the dimension.
*/
/**
* @typedef OrderLineItemReturnInfo
* @memberOf! content(v2sandbox)
* @type object
* @property {integer} daysToReturn How many days later the item can be returned.
* @property {boolean} isReturnable Whether the item is returnable.
* @property {string} policyUrl URL of the item return policy.
*/
/**
* @typedef OrderLineItemShippingDetails
* @memberOf! content(v2sandbox)
* @type object
* @property {string} deliverByDate The delivery by date, in ISO 8601 format.
* @property {content(v2sandbox).OrderLineItemShippingDetailsMethod} method Details of the shipping method.
* @property {string} shipByDate The ship by date, in ISO 8601 format.
*/
/**
* @typedef OrderLineItemShippingDetailsMethod
* @memberOf! content(v2sandbox)
* @type object
* @property {string} carrier The carrier for the shipping. Optional.
* @property {integer} maxDaysInTransit Maximum transit time.
* @property {string} methodName The name of the shipping method.
* @property {integer} minDaysInTransit Minimum transit time.
*/
/**
* @typedef OrderPaymentMethod
* @memberOf! content(v2sandbox)
* @type object
* @property {content(v2sandbox).OrderAddress} billingAddress The billing address.
* @property {integer} expirationMonth The card expiration month (January = 1, February = 2 etc.).
* @property {integer} expirationYear The card expiration year (4-digit, e.g. 2015).
* @property {string} lastFourDigits The last four digits of the card number.
* @property {string} phoneNumber The billing phone number.
* @property {string} type The type of instrument (VISA, Mastercard, etc).
*/
/**
* @typedef OrderPromotion
* @memberOf! content(v2sandbox)
* @type object
* @property {content(v2sandbox).OrderPromotionBenefit[]} benefits
* @property {string} effectiveDates The date and time frame when the promotion is active and ready for validation review. Note that the promotion live time may be delayed for a few hours due to the validation review.
Start date and end date are separated by a forward slash (/). The start date is specified by the format (YYYY-MM-DD), followed by the letter ?T?, the time of the day when the sale starts (in Greenwich Mean Time, GMT), followed by an expression of the time zone for the sale. The end date is in the same format.
* @property {string} genericRedemptionCode Optional. The text code that corresponds to the promotion when applied on the retailer?s website.
* @property {string} id The unique ID of the promotion.
* @property {string} longTitle The full title of the promotion.
* @property {string} productApplicability Whether the promotion is applicable to all products or only specific products.
* @property {string} redemptionChannel Indicates that the promotion is valid online.
*/
/**
* @typedef OrderPromotionBenefit
* @memberOf! content(v2sandbox)
* @type object
* @property {content(v2sandbox).Price} discount The discount in the order price when the promotion is applied.
* @property {string[]} offerIds The OfferId(s) that were purchased in this order and map to this specific benefit of the promotion.
* @property {string} subType Further describes the benefit of the promotion. Note that we will expand on this enumeration as we support new promotion sub-types.
* @property {content(v2sandbox).Price} taxImpact The impact on tax when the promotion is applied.
* @property {string} type Describes whether the promotion applies to products (e.g. 20% off) or to shipping (e.g. Free Shipping).
*/
/**
* @typedef OrderRefund
* @memberOf! content(v2sandbox)
* @type object
* @property {string} actor The actor that created the refund.
* @property {content(v2sandbox).Price} amount The amount that is refunded.
* @property {string} creationDate Date on which the item has been created, in ISO 8601 format.
* @property {string} reason The reason for the refund.
* @property {string} reasonText The explanation of the reason.
*/
/**
* @typedef OrderReturn
* @memberOf! content(v2sandbox)
* @type object
* @property {string} actor The actor that created the refund.
* @property {string} creationDate Date on which the item has been created, in ISO 8601 format.
* @property {integer} quantity Quantity that is returned.
* @property {string} reason The reason for the return.
* @property {string} reasonText The explanation of the reason.
*/
/**
* @typedef OrderShipment
* @memberOf! content(v2sandbox)
* @type object
* @property {string} carrier The carrier handling the shipment.
* @property {string} creationDate Date on which the shipment has been created, in ISO 8601 format.
* @property {string} deliveryDate Date on which the shipment has been delivered, in ISO 8601 format. Present only if status is delievered
* @property {string} id The id of the shipment.
* @property {content(v2sandbox).OrderShipmentLineItemShipment[]} lineItems The line items that are shipped.
* @property {string} status The status of the shipment.
* @property {string} trackingId The tracking id for the shipment.
*/
/**
* @typedef OrderShipmentLineItemShipment
* @memberOf! content(v2sandbox)
* @type object
* @property {string} lineItemId The id of the line item that is shipped.
* @property {integer} quantity The quantity that is shipped.
*/
/**
* @typedef OrdersAcknowledgeRequest
* @memberOf! content(v2sandbox)
* @type object
* @property {string} operationId The ID of the operation. Unique across all operations for a given order.
*/
/**
* @typedef OrdersAcknowledgeResponse
* @memberOf! content(v2sandbox)
* @type object
* @property {string} executionStatus The status of the execution.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "content#ordersAcknowledgeResponse".
*/
/**
* @typedef OrdersAdvanceTestOrderResponse
* @memberOf! content(v2sandbox)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "content#ordersAdvanceTestOrderResponse".
*/
/**
* @typedef OrdersCancelLineItemRequest
* @memberOf! content(v2sandbox)
* @type object
* @property {content(v2sandbox).Price} amount Amount to refund for the cancelation. Optional. If not set, Google will calculate the default based on the price and tax of the items involved. The amount must not be larger than the net amount left on the order.
* @property {string} lineItemId The ID of the line item to cancel.
* @property {string} operationId The ID of the operation. Unique across all operations for a given order.
* @property {integer} quantity The quantity to cancel.
* @property {string} reason The reason for the cancellation.
* @property {string} reasonText The explanation of the reason.
*/
/**
* @typedef OrdersCancelLineItemResponse
* @memberOf! content(v2sandbox)
* @type object
* @property {string} executionStatus The status of the execution.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "content#ordersCancelLineItemResponse".
*/
/**
* @typedef OrdersCancelRequest
* @memberOf! content(v2sandbox)
* @type object
* @property {string} operationId The ID of the operation. Unique across all operations for a given order.
* @property {string} reason The reason for the cancellation.
* @property {string} reasonText The explanation of the reason.
*/
/**
* @typedef OrdersCancelResponse
* @memberOf! content(v2sandbox)
* @type object
* @property {string} executionStatus The status of the execution.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "content#ordersCancelResponse".
*/
/**
* @typedef OrdersCreateTestOrderRequest
* @memberOf! content(v2sandbox)
* @type object
* @property {string} templateName The test order template to use. Specify as an alternative to testOrder as a shortcut for retrieving a template and then creating an order using that template.
* @property {content(v2sandbox).TestOrder} testOrder The test order to create.
*/
/**
* @typedef OrdersCreateTestOrderResponse
* @memberOf! content(v2sandbox)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "content#ordersCreateTestOrderResponse".
* @property {string} orderId The ID of the newly created test order.
*/
/**
* @typedef OrdersCustomBatchRequest
* @memberOf! content(v2sandbox)
* @type object
* @property {content(v2sandbox).OrdersCustomBatchRequestEntry[]} entries The request entries to be processed in the batch.
*/
/**
* @typedef OrdersCustomBatchRequestEntry
* @memberOf! content(v2sandbox)
* @type object
* @property {integer} batchId An entry ID, unique within the batch request.
* @property {content(v2sandbox).OrdersCustomBatchRequestEntryCancel} cancel Required for cancel method.
* @property {content(v2sandbox).OrdersCustomBatchRequestEntryCancelLineItem} cancelLineItem Required for cancelLineItem method.
* @property {string} merchantId The ID of the managing account.
* @property {string} merchantOrderId The merchant order id. Required for updateMerchantOrderId and getByMerchantOrderId methods.
* @property {string} method The method to apply.
* @property {string} operationId The ID of the operation. Unique across all operations for a given order. Required for all methods beside get and getByMerchantOrderId.
* @property {string} orderId The ID of the order. Required for all methods beside getByMerchantOrderId.
* @property {content(v2sandbox).OrdersCustomBatchRequestEntryRefund} refund Required for refund method.
* @property {content(v2sandbox).OrdersCustomBatchRequestEntryReturnLineItem} returnLineItem Required for returnLineItem method.
* @property {content(v2sandbox).OrdersCustomBatchRequestEntryShipLineItems} shipLineItems Required for shipLineItems method.
* @property {content(v2sandbox).OrdersCustomBatchRequestEntryUpdateShipment} updateShipment Required for updateShipment method.
*/
/**
* @typedef OrdersCustomBatchRequestEntryCancel
* @memberOf! content(v2sandbox)
* @type object
* @property {string} reason The reason for the cancellation.
* @property {string} reasonText The explanation of the reason.
*/
/**
* @typedef OrdersCustomBatchRequestEntryCancelLineItem
* @memberOf! content(v2sandbox)
* @type object
* @property {content(v2sandbox).Price} amount Amount to refund for the cancelation. Optional. If not set, Google will calculate the default based on the price and tax of the items involved. The amount must not be larger than the net amount left on the order.
* @property {string} lineItemId The ID of the line item to cancel.
* @property {integer} quantity The quantity to cancel.
* @property {string} reason The reason for the cancellation.
* @property {string} reasonText The explanation of the reason.
*/
/**
* @typedef OrdersCustomBatchRequestEntryRefund
* @memberOf! content(v2sandbox)
* @type object
* @property {content(v2sandbox).Price} amount The amount that is refunded.
* @property {string} reason The reason for the refund.
* @property {string} reasonText The explanation of the reason.
*/
/**
* @typedef OrdersCustomBatchRequestEntryReturnLineItem
* @memberOf! content(v2sandbox)
* @type object
* @property {string} lineItemId The ID of the line item to return.
* @property {integer} quantity The quantity to return.
* @property {string} reason The reason for the return.
* @property {string} reasonText The explanation of the reason.
*/
/**
* @typedef OrdersCustomBatchRequestEntryShipLineItems
* @memberOf! content(v2sandbox)
* @type object
* @property {string} carrier The carrier handling the shipment.
* @property {content(v2sandbox).OrderShipmentLineItemShipment[]} lineItems Line items to ship.
* @property {string} shipmentId The ID of the shipment.
* @property {string} trackingId The tracking id for the shipment.
*/
/**
* @typedef OrdersCustomBatchRequestEntryUpdateShipment
* @memberOf! content(v2sandbox)
* @type object
* @property {string} carrier The carrier handling the shipment. Not updated if missing.
* @property {string} shipmentId The ID of the shipment.
* @property {string} status New status for the shipment. Not updated if missing.
* @property {string} trackingId The tracking id for the shipment. Not updated if missing.
*/
/**
* @typedef OrdersCustomBatchResponse
* @memberOf! content(v2sandbox)
* @type object
* @property {content(v2sandbox).OrdersCustomBatchResponseEntry[]} entries The result of the execution of the batch requests.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "content#ordersCustomBatchResponse".
*/
/**
* @typedef OrdersCustomBatchResponseEntry
* @memberOf! content(v2sandbox)
* @type object
* @property {integer} batchId The ID of the request entry this entry responds to.
* @property {content(v2sandbox).Errors} errors A list of errors defined if and only if the request failed.
* @property {string} executionStatus The status of the execution. Only defined if the method is not get or getByMerchantOrderId and if the request was successful.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "content#ordersCustomBatchResponseEntry".
* @property {content(v2sandbox).Order} order The retrieved order. Only defined if the method is get and if the request was successful.
*/
/**
* @typedef OrdersGetByMerchantOrderIdResponse
* @memberOf! content(v2sandbox)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "content#ordersGetByMerchantOrderIdResponse".
* @property {content(v2sandbox).Order} order The requested order.
*/
/**
* @typedef OrdersGetTestOrderTemplateResponse
* @memberOf! content(v2sandbox)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "content#ordersGetTestOrderTemplateResponse".
* @property {content(v2sandbox).TestOrder} template The requested test order template.
*/
/**
* @typedef OrdersListResponse
* @memberOf! content(v2sandbox)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "content#ordersListResponse".
* @property {string} nextPageToken The token for the retrieval of the next page of orders.
* @property {content(v2sandbox).Order[]} resources
*/
/**
* @typedef OrdersRefundRequest
* @memberOf! content(v2sandbox)
* @type object
* @property {content(v2sandbox).Price} amount The amount that is refunded.
* @property {string} operationId The ID of the operation. Unique across all operations for a given order.
* @property {string} reason The reason for the refund.
* @property {string} reasonText The explanation of the reason.
*/
/**
* @typedef OrdersRefundResponse
* @memberOf! content(v2sandbox)
* @type object
* @property {string} executionStatus The status of the execution.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "content#ordersRefundResponse".
*/
/**
* @typedef OrdersReturnLineItemRequest
* @memberOf! content(v2sandbox)
* @type object
* @property {string} lineItemId The ID of the line item to return.
* @property {string} operationId The ID of the operation. Unique across all operations for a given order.
* @property {integer} quantity The quantity to return.
* @property {string} reason The reason for the return.
* @property {string} reasonText The explanation of the reason.
*/
/**
* @typedef OrdersReturnLineItemResponse
* @memberOf! content(v2sandbox)
* @type object
* @property {string} executionStatus The status of the execution.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "content#ordersReturnLineItemResponse".
*/
/**
* @typedef OrdersShipLineItemsRequest
* @memberOf! content(v2sandbox)
* @type object
* @property {string} carrier The carrier handling the shipment.
* @property {content(v2sandbox).OrderShipmentLineItemShipment[]} lineItems Line items to ship.
* @property {string} operationId The ID of the operation. Unique across all operations for a given order.
* @property {string} shipmentId The ID of the shipment.
* @property {string} trackingId The tracking id for the shipment.
*/
/**
* @typedef OrdersShipLineItemsResponse
* @memberOf! content(v2sandbox)
* @type object
* @property {string} executionStatus The status of the execution.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "content#ordersShipLineItemsResponse".
*/
/**
* @typedef OrdersUpdateMerchantOrderIdRequest
* @memberOf! content(v2sandbox)
* @type object
* @property {string} merchantOrderId The merchant order id to be assigned to the order. Must be unique per merchant.
* @property {string} operationId The ID of the operation. Unique across all operations for a given order.
*/
/**
* @typedef OrdersUpdateMerchantOrderIdResponse
* @memberOf! content(v2sandbox)
* @type object
* @property {string} executionStatus The status of the execution.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "content#ordersUpdateMerchantOrderIdResponse".
*/
/**
* @typedef OrdersUpdateShipmentRequest
* @memberOf! content(v2sandbox)
* @type object
* @property {string} carrier The carrier handling the shipment. Not updated if missing.
* @property {string} operationId The ID of the operation. Unique across all operations for a given order.
* @property {string} shipmentId The ID of the shipment.
* @property {string} status New status for the shipment. Not updated if missing.
* @property {string} trackingId The tracking id for the shipment. Not updated if missing.
*/
/**
* @typedef OrdersUpdateShipmentResponse
* @memberOf! content(v2sandbox)
* @type object
* @property {string} executionStatus The status of the execution.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "content#ordersUpdateShipmentResponse".
*/
/**
* @typedef Price
* @memberOf! content(v2sandbox)
* @type object
* @property {string} currency The currency of the price.
* @property {string} value The price represented as a number.
*/
/**
* @typedef TestOrder
* @memberOf! content(v2sandbox)
* @type object
* @property {content(v2sandbox).TestOrderCustomer} customer The details of the customer who placed the order.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "content#testOrder".
* @property {content(v2sandbox).TestOrderLineItem[]} lineItems Line items that are ordered. At least one line item must be provided.
* @property {content(v2sandbox).TestOrderPaymentMethod} paymentMethod The details of the payment method.
* @property {string} predefinedDeliveryAddress Identifier of one of the predefined delivery addresses for the delivery.
* @property {content(v2sandbox).OrderPromotion[]} promotions The details of the merchant provided promotions applied to the order. More details about the program are here.
* @property {content(v2sandbox).Price} shippingCost The total cost of shipping for all items.
* @property {content(v2sandbox).Price} shippingCostTax The tax for the total shipping cost.
* @property {string} shippingOption The requested shipping option.
*/
/**
* @typedef TestOrderCustomer
* @memberOf! content(v2sandbox)
* @type object
* @property {string} email Email address of the customer.
* @property {boolean} explicitMarketingPreference If set, this indicates the user explicitly chose to opt in or out of providing marketing rights to the merchant. If unset, this indicates the user has already made this choice in a previous purchase, and was thus not shown the marketing right opt in/out checkbox during the checkout flow. Optional.
* @property {string} fullName Full name of the customer.
*/
/**
* @typedef TestOrderLineItem
* @memberOf! content(v2sandbox)
* @type object
* @property {content(v2sandbox).TestOrderLineItemProduct} product Product data from the time of the order placement.
* @property {integer} quantityOrdered Number of items ordered.
* @property {content(v2sandbox).OrderLineItemReturnInfo} returnInfo Details of the return policy for the line item.
* @property {content(v2sandbox).OrderLineItemShippingDetails} shippingDetails Details of the requested shipping for the line item.
* @property {content(v2sandbox).Price} unitTax Unit tax for the line item.
*/
/**
* @typedef TestOrderLineItemProduct
* @memberOf! content(v2sandbox)
* @type object
* @property {string} brand Brand of the item.
* @property {string} channel The item's channel.
* @property {string} condition Condition or state of the item.
* @property {string} contentLanguage The two-letter ISO 639-1 language code for the item.
* @property {string} gtin Global Trade Item Number (GTIN) of the item. Optional.
* @property {string} imageLink URL of an image of the item.
* @property {string} itemGroupId Shared identifier for all variants of the same product. Optional.
* @property {string} mpn Manufacturer Part Number (MPN) of the item. Optional.
* @property {string} offerId An identifier of the item.
* @property {content(v2sandbox).Price} price The price for the product.
* @property {string} targetCountry The CLDR territory code of the target country of the product.
* @property {string} title The title of the product.
* @property {content(v2sandbox).OrderLineItemProductVariantAttribute[]} variantAttributes Variant attributes for the item. Optional.
*/
/**
* @typedef TestOrderPaymentMethod
* @memberOf! content(v2sandbox)
* @type object
* @property {integer} expirationMonth The card expiration month (January = 1, February = 2 etc.).
* @property {integer} expirationYear The card expiration year (4-digit, e.g. 2015).
* @property {string} lastFourDigits The last four digits of the card number.
* @property {string} predefinedBillingAddress The billing address.
* @property {string} type The type of instrument. Note that real orders might have different values than the four values accepted by createTestOrder.
*/
module.exports = Content;
|
| File | Statements | Branches | Functions | Lines | |||||
|---|---|---|---|---|---|---|---|---|---|
| v1b3.js | 2.29% | (4 / 175) | 0% | (0 / 114) | 0% | (0 / 29) | 2.29% | (4 / 175) |
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 1791 1792 1793 1794 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822 1823 1824 1825 1826 1827 1828 1829 1830 1831 1832 1833 1834 1835 1836 1837 1838 1839 1840 1841 1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853 1854 1855 1856 1857 1858 1859 1860 1861 1862 1863 1864 1865 1866 1867 1868 1869 1870 1871 1872 1873 1874 1875 1876 1877 1878 1879 1880 1881 1882 1883 1884 1885 1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896 1897 1898 1899 1900 1901 1902 1903 1904 1905 1906 1907 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 1939 1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 2026 2027 2028 2029 2030 2031 2032 2033 2034 2035 2036 2037 2038 2039 2040 2041 2042 2043 2044 2045 2046 2047 2048 2049 2050 2051 2052 2053 2054 2055 2056 2057 2058 2059 2060 2061 2062 2063 2064 2065 2066 2067 2068 2069 2070 2071 2072 2073 2074 2075 2076 2077 2078 2079 2080 2081 2082 2083 2084 2085 2086 2087 2088 2089 2090 2091 2092 2093 2094 2095 2096 2097 2098 2099 2100 2101 2102 2103 2104 2105 2106 2107 2108 2109 2110 2111 2112 2113 2114 2115 2116 2117 2118 2119 2120 2121 2122 2123 2124 2125 2126 2127 2128 2129 2130 2131 2132 2133 2134 2135 2136 2137 2138 2139 2140 2141 2142 2143 2144 2145 2146 2147 2148 2149 2150 2151 2152 2153 2154 2155 2156 2157 2158 2159 2160 2161 2162 2163 2164 2165 2166 2167 2168 2169 2170 2171 2172 2173 2174 2175 2176 2177 2178 2179 2180 2181 2182 2183 2184 2185 2186 2187 2188 2189 2190 2191 2192 2193 2194 2195 2196 2197 2198 2199 2200 2201 2202 2203 2204 2205 2206 2207 2208 2209 2210 2211 2212 2213 2214 2215 2216 2217 2218 2219 2220 2221 2222 2223 2224 2225 2226 2227 2228 2229 2230 2231 2232 2233 2234 2235 2236 2237 2238 2239 2240 2241 2242 2243 2244 2245 2246 2247 2248 2249 2250 2251 2252 2253 2254 2255 2256 2257 2258 2259 2260 2261 2262 2263 2264 2265 2266 2267 2268 2269 2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 2280 2281 2282 2283 2284 2285 2286 2287 2288 2289 2290 2291 2292 2293 2294 2295 2296 2297 2298 2299 2300 2301 2302 2303 2304 2305 2306 2307 2308 2309 2310 2311 2312 2313 2314 2315 2316 2317 2318 2319 2320 2321 2322 2323 2324 2325 2326 2327 2328 2329 2330 2331 2332 2333 2334 2335 2336 2337 2338 2339 2340 2341 2342 2343 2344 2345 2346 2347 2348 2349 2350 2351 2352 2353 2354 2355 2356 2357 2358 2359 2360 2361 2362 2363 2364 2365 2366 2367 2368 2369 2370 2371 2372 2373 2374 2375 2376 2377 2378 2379 2380 2381 2382 2383 2384 2385 2386 2387 2388 2389 2390 2391 2392 2393 2394 2395 2396 2397 2398 2399 2400 2401 2402 2403 2404 2405 2406 2407 2408 2409 2410 2411 2412 2413 2414 2415 2416 2417 2418 2419 2420 2421 2422 2423 2424 2425 2426 2427 2428 2429 2430 2431 2432 2433 2434 2435 2436 2437 2438 2439 2440 2441 2442 2443 2444 2445 2446 2447 2448 2449 2450 2451 2452 2453 2454 2455 2456 2457 2458 2459 2460 2461 2462 2463 2464 2465 2466 2467 2468 2469 2470 2471 2472 2473 2474 2475 2476 2477 2478 2479 2480 2481 2482 2483 2484 2485 2486 2487 2488 2489 2490 2491 2492 2493 2494 2495 2496 2497 2498 2499 2500 2501 2502 2503 2504 2505 2506 2507 2508 2509 2510 2511 2512 2513 2514 2515 2516 2517 2518 2519 2520 2521 2522 2523 2524 2525 2526 2527 2528 2529 2530 2531 2532 2533 2534 2535 2536 2537 2538 2539 2540 2541 2542 2543 2544 2545 2546 2547 2548 2549 2550 2551 2552 2553 2554 2555 2556 2557 2558 2559 2560 2561 2562 2563 2564 2565 2566 2567 2568 2569 2570 2571 2572 2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* Google Dataflow API
*
* Manages Google Cloud Dataflow projects on Google Cloud Platform.
*
* @example
* var google = require('googleapis');
* var dataflow = google.dataflow('v1b3');
*
* @namespace dataflow
* @type {Function}
* @version v1b3
* @variation v1b3
* @param {object=} options Options for Dataflow
*/
function Dataflow(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.projects = {
/**
* dataflow.projects.workerMessages
*
* @desc Send a worker_message to the service.
*
* @alias dataflow.projects.workerMessages
* @memberOf! dataflow(v1b3)
*
* @param {object} params Parameters for request
* @param {string} params.projectId The project to send the WorkerMessages to.
* @param {dataflow(v1b3).SendWorkerMessagesRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
workerMessages: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataflow.googleapis.com/v1b3/projects/{projectId}/WorkerMessages',
method: 'POST'
}, options),
params: params,
requiredParams: ['projectId'],
pathParams: ['projectId'],
context: self
};
return createAPIRequest(parameters, callback);
},
jobs: {
/**
* dataflow.projects.jobs.update
*
* @desc Updates the state of an existing Cloud Dataflow job.
*
* @alias dataflow.projects.jobs.update
* @memberOf! dataflow(v1b3)
*
* @param {object} params Parameters for request
* @param {string=} params.location The location that contains this job.
* @param {string} params.projectId The ID of the Cloud Platform project that the job belongs to.
* @param {string} params.jobId The job ID.
* @param {dataflow(v1b3).Job} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataflow.googleapis.com/v1b3/projects/{projectId}/jobs/{jobId}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['projectId', 'jobId'],
pathParams: ['projectId', 'jobId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dataflow.projects.jobs.create
*
* @desc Creates a Cloud Dataflow job.
*
* @alias dataflow.projects.jobs.create
* @memberOf! dataflow(v1b3)
*
* @param {object} params Parameters for request
* @param {string} params.projectId The ID of the Cloud Platform project that the job belongs to.
* @param {string=} params.view The level of information requested in response.
* @param {string=} params.location The location that contains this job.
* @param {string=} params.replaceJobId Deprecated. This field is now in the Job message.
* @param {dataflow(v1b3).Job} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
create: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataflow.googleapis.com/v1b3/projects/{projectId}/jobs',
method: 'POST'
}, options),
params: params,
requiredParams: ['projectId'],
pathParams: ['projectId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dataflow.projects.jobs.getMetrics
*
* @desc Request the job status.
*
* @alias dataflow.projects.jobs.getMetrics
* @memberOf! dataflow(v1b3)
*
* @param {object} params Parameters for request
* @param {string=} params.location The location which contains the job specified by job_id.
* @param {string=} params.startTime Return only metric data that has changed since this time. Default is to return all information about all metrics for the job.
* @param {string} params.projectId A project id.
* @param {string} params.jobId The job to get messages for.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
getMetrics: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataflow.googleapis.com/v1b3/projects/{projectId}/jobs/{jobId}/metrics',
method: 'GET'
}, options),
params: params,
requiredParams: ['projectId', 'jobId'],
pathParams: ['projectId', 'jobId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dataflow.projects.jobs.get
*
* @desc Gets the state of the specified Cloud Dataflow job.
*
* @alias dataflow.projects.jobs.get
* @memberOf! dataflow(v1b3)
*
* @param {object} params Parameters for request
* @param {string=} params.location The location that contains this job.
* @param {string} params.projectId The ID of the Cloud Platform project that the job belongs to.
* @param {string} params.jobId The job ID.
* @param {string=} params.view The level of information requested in response.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataflow.googleapis.com/v1b3/projects/{projectId}/jobs/{jobId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['projectId', 'jobId'],
pathParams: ['projectId', 'jobId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dataflow.projects.jobs.list
*
* @desc List the jobs of a project.
*
* @alias dataflow.projects.jobs.list
* @memberOf! dataflow(v1b3)
*
* @param {object} params Parameters for request
* @param {string} params.projectId The project which owns the jobs.
* @param {string=} params.filter The kind of filter to use.
* @param {string=} params.location The location that contains this job.
* @param {string=} params.pageToken Set this to the 'next_page_token' field of a previous response to request additional results in a long list.
* @param {integer=} params.pageSize If there are many jobs, limit response to at most this many. The actual number of jobs returned will be the lesser of max_responses and an unspecified server-defined limit.
* @param {string=} params.view Level of information requested in response. Default is `JOB_VIEW_SUMMARY`.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataflow.googleapis.com/v1b3/projects/{projectId}/jobs',
method: 'GET'
}, options),
params: params,
requiredParams: ['projectId'],
pathParams: ['projectId'],
context: self
};
return createAPIRequest(parameters, callback);
},
debug: {
/**
* dataflow.projects.jobs.debug.getConfig
*
* @desc Get encoded debug configuration for component. Not cacheable.
*
* @alias dataflow.projects.jobs.debug.getConfig
* @memberOf! dataflow(v1b3)
*
* @param {object} params Parameters for request
* @param {string} params.projectId The project id.
* @param {string} params.jobId The job id.
* @param {dataflow(v1b3).GetDebugConfigRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
getConfig: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataflow.googleapis.com/v1b3/projects/{projectId}/jobs/{jobId}/debug/getConfig',
method: 'POST'
}, options),
params: params,
requiredParams: ['projectId', 'jobId'],
pathParams: ['projectId', 'jobId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dataflow.projects.jobs.debug.sendCapture
*
* @desc Send encoded debug capture data for component.
*
* @alias dataflow.projects.jobs.debug.sendCapture
* @memberOf! dataflow(v1b3)
*
* @param {object} params Parameters for request
* @param {string} params.projectId The project id.
* @param {string} params.jobId The job id.
* @param {dataflow(v1b3).SendDebugCaptureRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
sendCapture: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataflow.googleapis.com/v1b3/projects/{projectId}/jobs/{jobId}/debug/sendCapture',
method: 'POST'
}, options),
params: params,
requiredParams: ['projectId', 'jobId'],
pathParams: ['projectId', 'jobId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
workItems: {
/**
* dataflow.projects.jobs.workItems.lease
*
* @desc Leases a dataflow WorkItem to run.
*
* @alias dataflow.projects.jobs.workItems.lease
* @memberOf! dataflow(v1b3)
*
* @param {object} params Parameters for request
* @param {string} params.projectId Identifies the project this worker belongs to.
* @param {string} params.jobId Identifies the workflow job this worker belongs to.
* @param {dataflow(v1b3).LeaseWorkItemRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
lease: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataflow.googleapis.com/v1b3/projects/{projectId}/jobs/{jobId}/workItems:lease',
method: 'POST'
}, options),
params: params,
requiredParams: ['projectId', 'jobId'],
pathParams: ['projectId', 'jobId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dataflow.projects.jobs.workItems.reportStatus
*
* @desc Reports the status of dataflow WorkItems leased by a worker.
*
* @alias dataflow.projects.jobs.workItems.reportStatus
* @memberOf! dataflow(v1b3)
*
* @param {object} params Parameters for request
* @param {string} params.projectId The project which owns the WorkItem's job.
* @param {string} params.jobId The job which the WorkItem is part of.
* @param {dataflow(v1b3).ReportWorkItemStatusRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
reportStatus: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataflow.googleapis.com/v1b3/projects/{projectId}/jobs/{jobId}/workItems:reportStatus',
method: 'POST'
}, options),
params: params,
requiredParams: ['projectId', 'jobId'],
pathParams: ['projectId', 'jobId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
messages: {
/**
* dataflow.projects.jobs.messages.list
*
* @desc Request the job status.
*
* @alias dataflow.projects.jobs.messages.list
* @memberOf! dataflow(v1b3)
*
* @param {object} params Parameters for request
* @param {string} params.jobId The job to get messages about.
* @param {string} params.projectId A project id.
* @param {string=} params.endTime Return only messages with timestamps < end_time. The default is now (i.e. return up to the latest messages available).
* @param {string=} params.location The location which contains the job specified by job_id.
* @param {string=} params.startTime If specified, return only messages with timestamps >= start_time. The default is the job creation time (i.e. beginning of messages).
* @param {string=} params.pageToken If supplied, this should be the value of next_page_token returned by an earlier call. This will cause the next page of results to be returned.
* @param {integer=} params.pageSize If specified, determines the maximum number of messages to return. If unspecified, the service may choose an appropriate default, or may return an arbitrarily large number of results.
* @param {string=} params.minimumImportance Filter to only get messages with importance >= level
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataflow.googleapis.com/v1b3/projects/{projectId}/jobs/{jobId}/messages',
method: 'GET'
}, options),
params: params,
requiredParams: ['projectId', 'jobId'],
pathParams: ['jobId', 'projectId'],
context: self
};
return createAPIRequest(parameters, callback);
}
}
},
templates: {
/**
* dataflow.projects.templates.create
*
* @desc Creates a Cloud Dataflow job from a template.
*
* @alias dataflow.projects.templates.create
* @memberOf! dataflow(v1b3)
*
* @param {object} params Parameters for request
* @param {string} params.projectId Required. The ID of the Cloud Platform project that the job belongs to.
* @param {dataflow(v1b3).CreateJobFromTemplateRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
create: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataflow.googleapis.com/v1b3/projects/{projectId}/templates',
method: 'POST'
}, options),
params: params,
requiredParams: ['projectId'],
pathParams: ['projectId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dataflow.projects.templates.launch
*
* @desc Launch a template.
*
* @alias dataflow.projects.templates.launch
* @memberOf! dataflow(v1b3)
*
* @param {object} params Parameters for request
* @param {string=} params.gcsPath Required. A Cloud Storage path to the template from which to create the job. Must be valid Cloud Storage URL, beginning with 'gs://'.
* @param {boolean=} params.dryRun Whether or not the job should actually be executed after validating parameters. Defaults to false. Validation errors do not cause the HTTP request to fail if true.
* @param {string=} params.location The location to which to direct the request.
* @param {string} params.projectId Required. The ID of the Cloud Platform project that the job belongs to.
* @param {dataflow(v1b3).LaunchTemplateParameters} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
launch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataflow.googleapis.com/v1b3/projects/{projectId}/templates:launch',
method: 'POST'
}, options),
params: params,
requiredParams: ['projectId'],
pathParams: ['projectId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dataflow.projects.templates.get
*
* @desc Get the template associated with a template.
*
* @alias dataflow.projects.templates.get
* @memberOf! dataflow(v1b3)
*
* @param {object} params Parameters for request
* @param {string=} params.gcsPath Required. A Cloud Storage path to the template from which to create the job. Must be a valid Cloud Storage URL, beginning with `gs://`.
* @param {string=} params.location The location to which to direct the request.
* @param {string} params.projectId Required. The ID of the Cloud Platform project that the job belongs to.
* @param {string=} params.view The view to retrieve. Defaults to METADATA_ONLY.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataflow.googleapis.com/v1b3/projects/{projectId}/templates:get',
method: 'GET'
}, options),
params: params,
requiredParams: ['projectId'],
pathParams: ['projectId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
locations: {
/**
* dataflow.projects.locations.workerMessages
*
* @desc Send a worker_message to the service.
*
* @alias dataflow.projects.locations.workerMessages
* @memberOf! dataflow(v1b3)
*
* @param {object} params Parameters for request
* @param {string} params.location The location which contains the job
* @param {string} params.projectId The project to send the WorkerMessages to.
* @param {dataflow(v1b3).SendWorkerMessagesRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
workerMessages: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataflow.googleapis.com/v1b3/projects/{projectId}/locations/{location}/WorkerMessages',
method: 'POST'
}, options),
params: params,
requiredParams: ['projectId', 'location'],
pathParams: ['location', 'projectId'],
context: self
};
return createAPIRequest(parameters, callback);
},
templates: {
/**
* dataflow.projects.locations.templates.launch
*
* @desc Launch a template.
*
* @alias dataflow.projects.locations.templates.launch
* @memberOf! dataflow(v1b3)
*
* @param {object} params Parameters for request
* @param {string} params.location The location to which to direct the request.
* @param {string} params.projectId Required. The ID of the Cloud Platform project that the job belongs to.
* @param {string=} params.gcsPath Required. A Cloud Storage path to the template from which to create the job. Must be valid Cloud Storage URL, beginning with 'gs://'.
* @param {boolean=} params.dryRun Whether or not the job should actually be executed after validating parameters. Defaults to false. Validation errors do not cause the HTTP request to fail if true.
* @param {dataflow(v1b3).LaunchTemplateParameters} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
launch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataflow.googleapis.com/v1b3/projects/{projectId}/locations/{location}/templates:launch',
method: 'POST'
}, options),
params: params,
requiredParams: ['projectId', 'location'],
pathParams: ['location', 'projectId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dataflow.projects.locations.templates.get
*
* @desc Get the template associated with a template.
*
* @alias dataflow.projects.locations.templates.get
* @memberOf! dataflow(v1b3)
*
* @param {object} params Parameters for request
* @param {string} params.location The location to which to direct the request.
* @param {string} params.projectId Required. The ID of the Cloud Platform project that the job belongs to.
* @param {string=} params.view The view to retrieve. Defaults to METADATA_ONLY.
* @param {string=} params.gcsPath Required. A Cloud Storage path to the template from which to create the job. Must be a valid Cloud Storage URL, beginning with `gs://`.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataflow.googleapis.com/v1b3/projects/{projectId}/locations/{location}/templates:get',
method: 'GET'
}, options),
params: params,
requiredParams: ['projectId', 'location'],
pathParams: ['location', 'projectId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dataflow.projects.locations.templates.create
*
* @desc Creates a Cloud Dataflow job from a template.
*
* @alias dataflow.projects.locations.templates.create
* @memberOf! dataflow(v1b3)
*
* @param {object} params Parameters for request
* @param {string} params.location The location to which to direct the request.
* @param {string} params.projectId Required. The ID of the Cloud Platform project that the job belongs to.
* @param {dataflow(v1b3).CreateJobFromTemplateRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
create: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataflow.googleapis.com/v1b3/projects/{projectId}/locations/{location}/templates',
method: 'POST'
}, options),
params: params,
requiredParams: ['projectId', 'location'],
pathParams: ['location', 'projectId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
jobs: {
/**
* dataflow.projects.locations.jobs.get
*
* @desc Gets the state of the specified Cloud Dataflow job.
*
* @alias dataflow.projects.locations.jobs.get
* @memberOf! dataflow(v1b3)
*
* @param {object} params Parameters for request
* @param {string} params.projectId The ID of the Cloud Platform project that the job belongs to.
* @param {string} params.jobId The job ID.
* @param {string=} params.view The level of information requested in response.
* @param {string} params.location The location that contains this job.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataflow.googleapis.com/v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['projectId', 'location', 'jobId'],
pathParams: ['projectId', 'jobId', 'location'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dataflow.projects.locations.jobs.list
*
* @desc List the jobs of a project.
*
* @alias dataflow.projects.locations.jobs.list
* @memberOf! dataflow(v1b3)
*
* @param {object} params Parameters for request
* @param {string} params.projectId The project which owns the jobs.
* @param {string=} params.filter The kind of filter to use.
* @param {string} params.location The location that contains this job.
* @param {string=} params.pageToken Set this to the 'next_page_token' field of a previous response to request additional results in a long list.
* @param {integer=} params.pageSize If there are many jobs, limit response to at most this many. The actual number of jobs returned will be the lesser of max_responses and an unspecified server-defined limit.
* @param {string=} params.view Level of information requested in response. Default is `JOB_VIEW_SUMMARY`.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataflow.googleapis.com/v1b3/projects/{projectId}/locations/{location}/jobs',
method: 'GET'
}, options),
params: params,
requiredParams: ['projectId', 'location'],
pathParams: ['projectId', 'location'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dataflow.projects.locations.jobs.update
*
* @desc Updates the state of an existing Cloud Dataflow job.
*
* @alias dataflow.projects.locations.jobs.update
* @memberOf! dataflow(v1b3)
*
* @param {object} params Parameters for request
* @param {string} params.location The location that contains this job.
* @param {string} params.projectId The ID of the Cloud Platform project that the job belongs to.
* @param {string} params.jobId The job ID.
* @param {dataflow(v1b3).Job} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataflow.googleapis.com/v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['projectId', 'location', 'jobId'],
pathParams: ['location', 'projectId', 'jobId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dataflow.projects.locations.jobs.create
*
* @desc Creates a Cloud Dataflow job.
*
* @alias dataflow.projects.locations.jobs.create
* @memberOf! dataflow(v1b3)
*
* @param {object} params Parameters for request
* @param {string} params.projectId The ID of the Cloud Platform project that the job belongs to.
* @param {string=} params.view The level of information requested in response.
* @param {string} params.location The location that contains this job.
* @param {string=} params.replaceJobId Deprecated. This field is now in the Job message.
* @param {dataflow(v1b3).Job} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
create: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataflow.googleapis.com/v1b3/projects/{projectId}/locations/{location}/jobs',
method: 'POST'
}, options),
params: params,
requiredParams: ['projectId', 'location'],
pathParams: ['projectId', 'location'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dataflow.projects.locations.jobs.getMetrics
*
* @desc Request the job status.
*
* @alias dataflow.projects.locations.jobs.getMetrics
* @memberOf! dataflow(v1b3)
*
* @param {object} params Parameters for request
* @param {string} params.location The location which contains the job specified by job_id.
* @param {string=} params.startTime Return only metric data that has changed since this time. Default is to return all information about all metrics for the job.
* @param {string} params.projectId A project id.
* @param {string} params.jobId The job to get messages for.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
getMetrics: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataflow.googleapis.com/v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/metrics',
method: 'GET'
}, options),
params: params,
requiredParams: ['projectId', 'location', 'jobId'],
pathParams: ['location', 'projectId', 'jobId'],
context: self
};
return createAPIRequest(parameters, callback);
},
debug: {
/**
* dataflow.projects.locations.jobs.debug.getConfig
*
* @desc Get encoded debug configuration for component. Not cacheable.
*
* @alias dataflow.projects.locations.jobs.debug.getConfig
* @memberOf! dataflow(v1b3)
*
* @param {object} params Parameters for request
* @param {string} params.projectId The project id.
* @param {string} params.jobId The job id.
* @param {string} params.location The location which contains the job specified by job_id.
* @param {dataflow(v1b3).GetDebugConfigRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
getConfig: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataflow.googleapis.com/v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/debug/getConfig',
method: 'POST'
}, options),
params: params,
requiredParams: ['projectId', 'location', 'jobId'],
pathParams: ['projectId', 'jobId', 'location'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dataflow.projects.locations.jobs.debug.sendCapture
*
* @desc Send encoded debug capture data for component.
*
* @alias dataflow.projects.locations.jobs.debug.sendCapture
* @memberOf! dataflow(v1b3)
*
* @param {object} params Parameters for request
* @param {string} params.projectId The project id.
* @param {string} params.jobId The job id.
* @param {string} params.location The location which contains the job specified by job_id.
* @param {dataflow(v1b3).SendDebugCaptureRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
sendCapture: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataflow.googleapis.com/v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/debug/sendCapture',
method: 'POST'
}, options),
params: params,
requiredParams: ['projectId', 'location', 'jobId'],
pathParams: ['projectId', 'jobId', 'location'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
workItems: {
/**
* dataflow.projects.locations.jobs.workItems.lease
*
* @desc Leases a dataflow WorkItem to run.
*
* @alias dataflow.projects.locations.jobs.workItems.lease
* @memberOf! dataflow(v1b3)
*
* @param {object} params Parameters for request
* @param {string} params.projectId Identifies the project this worker belongs to.
* @param {string} params.jobId Identifies the workflow job this worker belongs to.
* @param {string} params.location The location which contains the WorkItem's job.
* @param {dataflow(v1b3).LeaseWorkItemRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
lease: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataflow.googleapis.com/v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/workItems:lease',
method: 'POST'
}, options),
params: params,
requiredParams: ['projectId', 'location', 'jobId'],
pathParams: ['projectId', 'jobId', 'location'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dataflow.projects.locations.jobs.workItems.reportStatus
*
* @desc Reports the status of dataflow WorkItems leased by a worker.
*
* @alias dataflow.projects.locations.jobs.workItems.reportStatus
* @memberOf! dataflow(v1b3)
*
* @param {object} params Parameters for request
* @param {string} params.projectId The project which owns the WorkItem's job.
* @param {string} params.jobId The job which the WorkItem is part of.
* @param {string} params.location The location which contains the WorkItem's job.
* @param {dataflow(v1b3).ReportWorkItemStatusRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
reportStatus: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataflow.googleapis.com/v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/workItems:reportStatus',
method: 'POST'
}, options),
params: params,
requiredParams: ['projectId', 'location', 'jobId'],
pathParams: ['projectId', 'jobId', 'location'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
messages: {
/**
* dataflow.projects.locations.jobs.messages.list
*
* @desc Request the job status.
*
* @alias dataflow.projects.locations.jobs.messages.list
* @memberOf! dataflow(v1b3)
*
* @param {object} params Parameters for request
* @param {string} params.projectId A project id.
* @param {string} params.jobId The job to get messages about.
* @param {string=} params.endTime Return only messages with timestamps < end_time. The default is now (i.e. return up to the latest messages available).
* @param {string} params.location The location which contains the job specified by job_id.
* @param {string=} params.pageToken If supplied, this should be the value of next_page_token returned by an earlier call. This will cause the next page of results to be returned.
* @param {string=} params.startTime If specified, return only messages with timestamps >= start_time. The default is the job creation time (i.e. beginning of messages).
* @param {integer=} params.pageSize If specified, determines the maximum number of messages to return. If unspecified, the service may choose an appropriate default, or may return an arbitrarily large number of results.
* @param {string=} params.minimumImportance Filter to only get messages with importance >= level
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataflow.googleapis.com/v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/messages',
method: 'GET'
}, options),
params: params,
requiredParams: ['projectId', 'location', 'jobId'],
pathParams: ['projectId', 'jobId', 'location'],
context: self
};
return createAPIRequest(parameters, callback);
}
}
}
}
};
}
/**
* @typedef ComponentSource
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} userName Human-readable name for this transform; may be user or system generated.
* @property {string} originalTransformOrCollection User name for the original user transform or collection with which this
source is most closely associated.
* @property {string} name Dataflow service generated name for this source.
*/
/**
* @typedef WorkItemServiceState
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} reportStatusInterval New recommended reporting interval.
* @property {dataflow(v1b3).Position} suggestedStopPosition Obsolete, always empty.
* @property {object} harnessData Other data returned by the service, specific to the particular
worker harness.
* @property {string} leaseExpireTime Time at which the current lease will expire.
* @property {dataflow(v1b3).MetricShortId[]} metricShortId The short ids that workers should use in subsequent metric updates.
Workers should strive to use short ids whenever possible, but it is ok
to request the short_id again if a worker lost track of it
(e.g. if the worker is recovering from a crash).
NOTE: it is possible that the response may have short ids for a subset
of the metrics.
* @property {string} nextReportIndex The index value to use for the next report sent by the worker.
Note: If the report call fails for whatever reason, the worker should
reuse this index for subsequent report attempts.
* @property {dataflow(v1b3).ApproximateProgress} suggestedStopPoint DEPRECATED in favor of split_request.
* @property {dataflow(v1b3).ApproximateSplitRequest} splitRequest The progress point in the WorkItem where the Dataflow service
suggests that the worker truncate the task.
*/
/**
* @typedef MetricStructuredName
* @memberOf! dataflow(v1b3)
* @type object
* @property {object} context Zero or more labeled fields which identify the part of the job this
metric is associated with, such as the name of a step or collection.
For example, built-in counters associated with steps will have
context['step'] = <step-name>. Counters associated with PCollections
in the SDK will have context['pcollection'] = <pcollection-name>.
* @property {string} origin Origin (namespace) of metric name. May be blank for user-define metrics;
will be "dataflow" for metrics defined by the Dataflow service or SDK.
* @property {string} name Worker-defined metric name.
*/
/**
* @typedef SeqMapTaskOutputInfo
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} tag The id of the TupleTag the user code will tag the output value by.
* @property {dataflow(v1b3).Sink} sink The sink to write the output value to.
*/
/**
* @typedef JobExecutionStageInfo
* @memberOf! dataflow(v1b3)
* @type object
* @property {string[]} stepName The steps associated with the execution stage.
Note that stages may have several steps, and that a given step
might be run by more than one stage.
*/
/**
* @typedef KeyRangeLocation
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} deprecatedPersistentDirectory DEPRECATED. The location of the persistent state for this range, as a
persistent directory in the worker local filesystem.
* @property {string} deliveryEndpoint The physical location of this range assignment to be used for
streaming computation cross-worker message delivery.
* @property {string} start The start (inclusive) of the key range.
* @property {string} dataDisk The name of the data disk where data for this range is stored.
This name is local to the Google Cloud Platform project and uniquely
identifies the disk within that project, for example
"myproject-1014-104817-4c2-harness-0-disk-1".
* @property {string} end The end (exclusive) of the key range.
*/
/**
* @typedef SourceGetMetadataRequest
* @memberOf! dataflow(v1b3)
* @type object
* @property {dataflow(v1b3).Source} source Specification of the source whose metadata should be computed.
*/
/**
* @typedef NameAndKind
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} name Name of the counter.
* @property {string} kind Counter aggregation kind.
*/
/**
* @typedef SeqMapTask
* @memberOf! dataflow(v1b3)
* @type object
* @property {object} userFn The user function to invoke.
* @property {string} name The user-provided name of the SeqDo operation.
* @property {dataflow(v1b3).SeqMapTaskOutputInfo[]} outputInfos Information about each of the outputs.
* @property {dataflow(v1b3).SideInputInfo[]} inputs Information about each of the inputs.
* @property {string} stageName System-defined name of the stage containing the SeqDo operation.
Unique across the workflow.
* @property {string} systemName System-defined name of the SeqDo operation.
Unique across the workflow.
*/
/**
* @typedef WorkerMessageCode
* @memberOf! dataflow(v1b3)
* @type object
* @property {object} parameters Parameters contains specific information about the code.
This is a struct to allow parameters of different types.
Examples:
1. For a "HARNESS_STARTED" message parameters might provide the name
of the worker and additional data like timing information.
2. For a "GCS_DOWNLOAD_ERROR" parameters might contain fields listing
the GCS objects being downloaded and fields containing errors.
In general complex data structures should be avoided. If a worker
needs to send a specific and complicated data structure then please
consider defining a new proto and adding it to the data oneof in
WorkerMessageResponse.
Conventions:
Parameters should only be used for information that isn't typically passed
as a label.
hostname and other worker identifiers should almost always be passed
as labels since they will be included on most messages.
* @property {string} code The code is a string intended for consumption by a machine that identifies
the type of message being sent.
Examples:
1. "HARNESS_STARTED" might be used to indicate the worker harness has
started.
2. "GCS_DOWNLOAD_ERROR" might be used to indicate an error downloading
a GCS file as part of the boot process of one of the worker containers.
This is a string and not an enum to make it easy to add new codes without
waiting for an API change.
*/
/**
* @typedef CustomSourceLocation
* @memberOf! dataflow(v1b3)
* @type object
* @property {boolean} stateful Whether this source is stateful.
*/
/**
* @typedef MapTask
* @memberOf! dataflow(v1b3)
* @type object
* @property {dataflow(v1b3).ParallelInstruction[]} instructions The instructions in the MapTask.
* @property {string} systemName System-defined name of this MapTask.
Unique across the workflow.
* @property {string} stageName System-defined name of the stage containing this MapTask.
Unique across the workflow.
*/
/**
* @typedef FloatingPointMean
* @memberOf! dataflow(v1b3)
* @type object
* @property {number} sum The sum of all values being aggregated.
* @property {dataflow(v1b3).SplitInt64} count The number of values being aggregated.
*/
/**
* @typedef ReportWorkItemStatusResponse
* @memberOf! dataflow(v1b3)
* @type object
* @property {dataflow(v1b3).WorkItemServiceState[]} workItemServiceStates A set of messages indicating the service-side state for each
WorkItem whose status was reported, in the same order as the
WorkItemStatus messages in the ReportWorkItemStatusRequest which
resulting in this response.
*/
/**
* @typedef InstructionOutput
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} systemName System-defined name of this output.
Unique across the workflow.
* @property {boolean} onlyCountKeyBytes For system-generated byte and mean byte metrics, certain instructions
should only report the key size.
* @property {boolean} onlyCountValueBytes For system-generated byte and mean byte metrics, certain instructions
should only report the value size.
* @property {object} codec The codec to use to encode data being written via this output.
* @property {string} name The user-provided name of this output.
* @property {string} originalName System-defined name for this output in the original workflow graph.
Outputs that do not contribute to an original instruction do not set this.
*/
/**
* @typedef CreateJobFromTemplateRequest
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} gcsPath Required. A Cloud Storage path to the template from which to
create the job.
Must be a valid Cloud Storage URL, beginning with `gs://`.
* @property {dataflow(v1b3).RuntimeEnvironment} environment The runtime environment for the job.
* @property {string} location The location to which to direct the request.
* @property {object} parameters The runtime parameters to pass to the job.
* @property {string} jobName Required. The job name to use for the created job.
*/
/**
* @typedef IntegerMean
* @memberOf! dataflow(v1b3)
* @type object
* @property {dataflow(v1b3).SplitInt64} sum The sum of all values being aggregated.
* @property {dataflow(v1b3).SplitInt64} count The number of values being aggregated.
*/
/**
* @typedef ListJobsResponse
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} nextPageToken Set if there may be more results than fit in this response.
* @property {dataflow(v1b3).FailedLocation[]} failedLocation Zero or more messages describing locations that failed to respond.
* @property {dataflow(v1b3).Job[]} jobs A subset of the requested job information.
*/
/**
* @typedef ComputationTopology
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} userStageName The user stage name.
* @property {dataflow(v1b3).StateFamilyConfig[]} stateFamilies The state family values.
* @property {dataflow(v1b3).StreamLocation[]} outputs The outputs from the computation.
* @property {string} systemStageName The system stage name.
* @property {string} computationId The ID of the computation.
* @property {dataflow(v1b3).StreamLocation[]} inputs The inputs to the computation.
* @property {dataflow(v1b3).KeyRangeLocation[]} keyRanges The key ranges processed by the computation.
*/
/**
* @typedef RuntimeEnvironment
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} serviceAccountEmail The email address of the service account to run the job as.
* @property {string} tempLocation The Cloud Storage path to use for temporary files.
Must be a valid Cloud Storage URL, beginning with `gs://`.
* @property {boolean} bypassTempDirValidation Whether to bypass the safety checks for the job's temporary directory.
Use with caution.
* @property {integer} maxWorkers The maximum number of Google Compute Engine instances to be made
available to your pipeline during execution, from 1 to 1000.
* @property {string} zone The Compute Engine [availability zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones)
for launching worker instances to run your pipeline.
*/
/**
* @typedef MountedDataDisk
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} dataDisk The name of the data disk.
This name is local to the Google Cloud Platform project and uniquely
identifies the disk within that project, for example
"myproject-1014-104817-4c2-harness-0-disk-1".
*/
/**
* @typedef StreamingSideInputLocation
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} stateFamily Identifies the state family where this side input is stored.
* @property {string} tag Identifies the particular side input within the streaming Dataflow job.
*/
/**
* @typedef LaunchTemplateResponse
* @memberOf! dataflow(v1b3)
* @type object
* @property {dataflow(v1b3).Job} job The job that was launched, if the request was not a dry run and
the job was successfully launched.
*/
/**
* @typedef DerivedSource
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} derivationMode What source to base the produced source on (if any).
* @property {dataflow(v1b3).Source} source Specification of the source.
*/
/**
* @typedef DynamicSourceSplit
* @memberOf! dataflow(v1b3)
* @type object
* @property {dataflow(v1b3).DerivedSource} residual Residual part (returned to the pool of work).
Specified relative to the previously-current source.
* @property {dataflow(v1b3).DerivedSource} primary Primary part (continued to be processed by worker).
Specified relative to the previously-current source.
Becomes current.
*/
/**
* @typedef Job
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} currentStateTime The timestamp associated with the current state.
* @property {object} transformNameMapping The map of transform name prefixes of the job to be replaced to the
corresponding name prefixes of the new job.
* @property {string} createTime The timestamp when the job was initially created. Immutable and set by the
Cloud Dataflow service.
* @property {dataflow(v1b3).Environment} environment The environment for the job.
* @property {object} labels User-defined labels for this job.
The labels map can contain no more than 64 entries. Entries of the labels
map are UTF8 strings that comply with the following restrictions:
* Keys must conform to regexp: \p{Ll}\p{Lo}{0,62}
* Values must conform to regexp: [\p{Ll}\p{Lo}\p{N}_-]{0,63}
* Both keys and values are additionally constrained to be <= 128 bytes in
size.
* @property {string} type The type of Cloud Dataflow job.
* @property {string} projectId The ID of the Cloud Platform project that the job belongs to.
* @property {dataflow(v1b3).PipelineDescription} pipelineDescription Preliminary field: The format of this data may change at any time.
A description of the user pipeline and stages through which it is executed.
Created by Cloud Dataflow service. Only retrieved with
JOB_VIEW_DESCRIPTION or JOB_VIEW_ALL.
* @property {string} replaceJobId If this job is an update of an existing job, this field is the job ID
of the job it replaced.
When sending a `CreateJobRequest`, you can update a job by specifying it
here. The job named here is stopped, and its intermediate state is
transferred to this job.
* @property {string} requestedState The job's requested state.
`UpdateJob` may be used to switch between the `JOB_STATE_STOPPED` and
`JOB_STATE_RUNNING` states, by setting requested_state. `UpdateJob` may
also be used to directly set a job's requested state to
`JOB_STATE_CANCELLED` or `JOB_STATE_DONE`, irrevocably terminating the
job if it has not already reached a terminal state.
* @property {string[]} tempFiles A set of files the system should be aware of that are used
for temporary storage. These temporary files will be
removed on job completion.
No duplicates are allowed.
No file patterns are supported.
The supported files are:
Google Cloud Storage:
storage.googleapis.com/{bucket}/{object}
bucket.storage.googleapis.com/{object}
* @property {string} clientRequestId The client's unique identifier of the job, re-used across retried attempts.
If this field is set, the service will ensure its uniqueness.
The request to create a job will fail if the service has knowledge of a
previously submitted job with the same client's ID and job name.
The caller may use this field to ensure idempotence of job
creation across retried attempts to create a job.
By default, the field is empty and, in that case, the service ignores it.
* @property {string} name The user-specified Cloud Dataflow job name.
Only one Job with a given name may exist in a project at any
given time. If a caller attempts to create a Job with the same
name as an already-existing Job, the attempt returns the
existing Job.
The name must match the regular expression
`[a-z]([-a-z0-9]{0,38}[a-z0-9])?`
* @property {string} replacedByJobId If another job is an update of this job (and thus, this job is in
`JOB_STATE_UPDATED`), this field contains the ID of that job.
* @property {dataflow(v1b3).Step[]} steps The top-level steps that constitute the entire job.
* @property {dataflow(v1b3).JobExecutionInfo} executionInfo Deprecated.
* @property {string} id The unique ID of this job.
This field is set by the Cloud Dataflow service when the Job is
created, and is immutable for the life of the job.
* @property {string} currentState The current state of the job.
Jobs are created in the `JOB_STATE_STOPPED` state unless otherwise
specified.
A job in the `JOB_STATE_RUNNING` state may asynchronously enter a
terminal state. After a job has reached a terminal state, no
further state updates may be made.
This field may be mutated by the Cloud Dataflow service;
callers cannot mutate it.
* @property {string} location The location that contains this job.
*/
/**
* @typedef SourceOperationResponse
* @memberOf! dataflow(v1b3)
* @type object
* @property {dataflow(v1b3).SourceGetMetadataResponse} getMetadata A response to a request to get metadata about a source.
* @property {dataflow(v1b3).SourceSplitResponse} split A response to a request to split a source.
*/
/**
* @typedef SideInputInfo
* @memberOf! dataflow(v1b3)
* @type object
* @property {dataflow(v1b3).Source[]} sources The source(s) to read element(s) from to get the value of this side input.
If more than one source, then the elements are taken from the
sources, in the specified order if order matters.
At least one source is required.
* @property {object} kind How to interpret the source element(s) as a side input value.
* @property {string} tag The id of the tag the user code will access this side input by;
this should correspond to the tag of some MultiOutputInfo.
*/
/**
* @typedef SendDebugCaptureResponse
* @memberOf! dataflow(v1b3)
* @type object
*/
/**
* @typedef WriteInstruction
* @memberOf! dataflow(v1b3)
* @type object
* @property {dataflow(v1b3).InstructionInput} input The input.
* @property {dataflow(v1b3).Sink} sink The sink to write to.
*/
/**
* @typedef ConcatPosition
* @memberOf! dataflow(v1b3)
* @type object
* @property {dataflow(v1b3).Position} position Position within the inner source.
* @property {integer} index Index of the inner source.
*/
/**
* @typedef CounterStructuredNameAndMetadata
* @memberOf! dataflow(v1b3)
* @type object
* @property {dataflow(v1b3).CounterMetadata} metadata Metadata associated with a counter
* @property {dataflow(v1b3).CounterStructuredName} name Structured name of the counter.
*/
/**
* @typedef AutoscalingSettings
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} algorithm The algorithm to use for autoscaling.
* @property {integer} maxNumWorkers The maximum number of workers to cap scaling at.
*/
/**
* @typedef StreamingComputationRanges
* @memberOf! dataflow(v1b3)
* @type object
* @property {dataflow(v1b3).KeyRangeDataDiskAssignment[]} rangeAssignments Data disk assignments for ranges from this computation.
* @property {string} computationId The ID of the computation.
*/
/**
* @typedef ExecutionStageSummary
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} id Dataflow service generated id for this stage.
* @property {dataflow(v1b3).ComponentTransform[]} componentTransform Transforms that comprise this execution stage.
* @property {dataflow(v1b3).ComponentSource[]} componentSource Collections produced and consumed by component transforms of this stage.
* @property {string} kind Type of tranform this stage is executing.
* @property {dataflow(v1b3).StageSource[]} outputSource Output sources for this stage.
* @property {string} name Dataflow service generated name for this stage.
* @property {dataflow(v1b3).StageSource[]} inputSource Input sources for this stage.
*/
/**
* @typedef SendWorkerMessagesRequest
* @memberOf! dataflow(v1b3)
* @type object
* @property {dataflow(v1b3).WorkerMessage[]} workerMessages The WorkerMessages to send.
* @property {string} location The location which contains the job
*/
/**
* @typedef SourceSplitShard
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} derivationMode DEPRECATED
* @property {dataflow(v1b3).Source} source DEPRECATED
*/
/**
* @typedef CPUTime
* @memberOf! dataflow(v1b3)
* @type object
* @property {number} rate Average CPU utilization rate (% non-idle cpu / second) since previous
sample.
* @property {string} timestamp Timestamp of the measurement.
* @property {string} totalMs Total active CPU time across all cores (ie., non-idle) in milliseconds
since start-up.
*/
/**
* @typedef Environment
* @memberOf! dataflow(v1b3)
* @type object
* @property {dataflow(v1b3).WorkerPool[]} workerPools The worker pools. At least one "harness" worker pool must be
specified in order for the job to have workers.
* @property {string} dataset The dataset for the current project where various workflow
related tables are stored.
The supported resource type is:
Google BigQuery:
bigquery.googleapis.com/{dataset}
* @property {string[]} experiments The list of experiments to enable.
* @property {object} internalExperiments Experimental settings.
* @property {object} version A structure describing which components and their versions of the service
are required in order to run the job.
* @property {string} serviceAccountEmail Identity to run virtual machines as. Defaults to the default account.
* @property {object} userAgent A description of the process that generated the request.
* @property {object} sdkPipelineOptions The Cloud Dataflow SDK pipeline options specified by the user. These
options are passed through the service and are used to recreate the
SDK pipeline options on the worker in a language agnostic and platform
independent way.
* @property {string} clusterManagerApiService The type of cluster manager API to use. If unknown or
unspecified, the service will attempt to choose a reasonable
default. This should be in the form of the API service name,
e.g. "compute.googleapis.com".
* @property {string} tempStoragePrefix The prefix of the resources the system should use for temporary
storage. The system will append the suffix "/temp-{JOBNAME} to
this resource prefix, where {JOBNAME} is the value of the
job_name field. The resulting bucket and object prefix is used
as the prefix of the resources used to store temporary data
needed during the job execution. NOTE: This will override the
value in taskrunner_settings.
The supported resource type is:
Google Cloud Storage:
storage.googleapis.com/{bucket}/{object}
bucket.storage.googleapis.com/{object}
*/
/**
* @typedef StreamingComputationTask
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} taskType A type of streaming computation task.
* @property {dataflow(v1b3).StreamingComputationRanges[]} computationRanges Contains ranges of a streaming computation this task should apply to.
* @property {dataflow(v1b3).MountedDataDisk[]} dataDisks Describes the set of data disks this task should apply to.
*/
/**
* @typedef SendDebugCaptureRequest
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} componentId The internal component id for which debug information is sent.
* @property {string} workerId The worker id, i.e., VM hostname.
* @property {string} location The location which contains the job specified by job_id.
* @property {string} data The encoded debug information.
*/
/**
* @typedef GetDebugConfigResponse
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} config The encoded debug configuration for the requested component.
*/
/**
* @typedef ComponentTransform
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} originalTransform User name for the original user transform with which this transform is
most closely associated.
* @property {string} name Dataflow service generated name for this source.
* @property {string} userName Human-readable name for this transform; may be user or system generated.
*/
/**
* @typedef StreamingSetupTask
* @memberOf! dataflow(v1b3)
* @type object
* @property {integer} workerHarnessPort The TCP port used by the worker to communicate with the Dataflow
worker harness.
* @property {boolean} drain The user has requested drain.
* @property {integer} receiveWorkPort The TCP port on which the worker should listen for messages from
other streaming computation workers.
* @property {dataflow(v1b3).TopologyConfig} streamingComputationTopology The global topology of the streaming Dataflow job.
*/
/**
* @typedef PubsubLocation
* @memberOf! dataflow(v1b3)
* @type object
* @property {boolean} withAttributes If true, then the client has requested to get pubsub attributes.
* @property {string} idLabel If set, contains a pubsub label from which to extract record ids.
If left empty, record deduplication will be strictly best effort.
* @property {string} timestampLabel If set, contains a pubsub label from which to extract record timestamps.
If left empty, record timestamps will be generated upon arrival.
* @property {string} topic A pubsub topic, in the form of
"pubsub.googleapis.com/topics/<project-id>/<topic-name>"
* @property {string} subscription A pubsub subscription, in the form of
"pubsub.googleapis.com/subscriptions/<project-id>/<subscription-name>"
* @property {boolean} dropLateData Indicates whether the pipeline allows late-arriving data.
* @property {string} trackingSubscription If set, specifies the pubsub subscription that will be used for tracking
custom time timestamps for watermark estimation.
*/
/**
* @typedef WorkerHealthReport
* @memberOf! dataflow(v1b3)
* @type object
* @property {object[]} pods The pods running on the worker. See:
http://kubernetes.io/v1.1/docs/api-reference/v1/definitions.html#_v1_pod
This field is used by the worker to send the status of the indvidual
containers running on each worker.
* @property {string} vmStartupTime The time the VM was booted.
* @property {boolean} vmIsHealthy Whether the VM is healthy.
* @property {string} reportInterval The interval at which the worker is sending health reports.
The default value of 0 should be interpreted as the field is not being
explicitly set by the worker.
*/
/**
* @typedef JobMessage
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} time The timestamp of the message.
* @property {string} id Identifies the message. This is automatically generated by the
service; the caller should treat it as an opaque string.
* @property {string} messageText The text of the message.
* @property {string} messageImportance Importance level of the message.
*/
/**
* @typedef ParameterMetadata
* @memberOf! dataflow(v1b3)
* @type object
* @property {boolean} isOptional Optional. Whether the parameter is optional. Defaults to false.
* @property {string} name Required. The name of the parameter.
* @property {string[]} regexes Optional. Regexes that the parameter must match.
* @property {string} label Required. The label to display for the parameter.
* @property {string} helpText Required. The help text to display for the parameter.
*/
/**
* @typedef MultiOutputInfo
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} tag The id of the tag the user code will emit to this output by; this
should correspond to the tag of some SideInputInfo.
*/
/**
* @typedef SourceSplitRequest
* @memberOf! dataflow(v1b3)
* @type object
* @property {dataflow(v1b3).Source} source Specification of the source to be split.
* @property {dataflow(v1b3).SourceSplitOptions} options Hints for tuning the splitting process.
*/
/**
* @typedef SourceGetMetadataResponse
* @memberOf! dataflow(v1b3)
* @type object
* @property {dataflow(v1b3).SourceMetadata} metadata The computed metadata.
*/
/**
* @typedef ShellTask
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} command The shell command to run.
* @property {integer} exitCode Exit code for the task.
*/
/**
* @typedef MetricShortId
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} shortId The service-generated short identifier for the metric.
* @property {integer} metricIndex The index of the corresponding metric in
the ReportWorkItemStatusRequest. Required.
*/
/**
* @typedef TaskRunnerSettings
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} streamingWorkerMainClass The streaming worker main class name.
* @property {string} logUploadLocation Indicates where to put logs. If this is not specified, the logs
will not be uploaded.
The supported resource type is:
Google Cloud Storage:
storage.googleapis.com/{bucket}/{object}
bucket.storage.googleapis.com/{object}
* @property {string} workflowFileName The file to store the workflow in.
* @property {string} languageHint The suggested backend language.
* @property {string} commandlinesFileName The file to store preprocessing commands in.
* @property {string} tempStoragePrefix The prefix of the resources the taskrunner should use for
temporary storage.
The supported resource type is:
Google Cloud Storage:
storage.googleapis.com/{bucket}/{object}
bucket.storage.googleapis.com/{object}
* @property {string} baseTaskDir The location on the worker for task-specific subdirectories.
* @property {string} baseUrl The base URL for the taskrunner to use when accessing Google Cloud APIs.
When workers access Google Cloud APIs, they logically do so via
relative URLs. If this field is specified, it supplies the base
URL to use for resolving these relative URLs. The normative
algorithm used is defined by RFC 1808, "Relative Uniform Resource
Locators".
If not specified, the default value is "http://www.googleapis.com/"
* @property {boolean} logToSerialconsole Whether to send taskrunner log info to Google Compute Engine VM serial
console.
* @property {boolean} continueOnException Whether to continue taskrunner if an exception is hit.
* @property {dataflow(v1b3).WorkerSettings} parallelWorkerSettings The settings to pass to the parallel worker harness.
* @property {string} vmId The ID string of the VM.
* @property {string} taskUser The UNIX user ID on the worker VM to use for tasks launched by
taskrunner; e.g. "root".
* @property {boolean} alsologtostderr Whether to also send taskrunner log info to stderr.
* @property {string} taskGroup The UNIX group ID on the worker VM to use for tasks launched by
taskrunner; e.g. "wheel".
* @property {string} harnessCommand The command to launch the worker harness.
* @property {string} logDir The directory on the VM to store logs.
* @property {string} dataflowApiVersion The API version of endpoint, e.g. "v1b3"
* @property {string[]} oauthScopes The OAuth2 scopes to be requested by the taskrunner in order to
access the Cloud Dataflow API.
*/
/**
* @typedef Position
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} recordIndex Position is a record index.
* @property {string} shufflePosition CloudPosition is a base64 encoded BatchShufflePosition (with FIXED
sharding).
* @property {dataflow(v1b3).ConcatPosition} concatPosition CloudPosition is a concat position.
* @property {string} byteOffset Position is a byte offset.
* @property {boolean} end Position is past all other positions. Also useful for the end
position of an unbounded range.
* @property {string} key Position is a string key, ordered lexicographically.
*/
/**
* @typedef Source
* @memberOf! dataflow(v1b3)
* @type object
* @property {dataflow(v1b3).SourceMetadata} metadata Optionally, metadata for this source can be supplied right away,
avoiding a SourceGetMetadataOperation roundtrip
(see SourceOperationRequest).
This field is meaningful only in the Source objects populated
by the user (e.g. when filling in a DerivedSource).
Source objects supplied by the framework to the user don't have
this field populated.
* @property {object[]} baseSpecs While splitting, sources may specify the produced bundles
as differences against another source, in order to save backend-side
memory and allow bigger jobs. For details, see SourceSplitRequest.
To support this use case, the full set of parameters of the source
is logically obtained by taking the latest explicitly specified value
of each parameter in the order:
base_specs (later items win), spec (overrides anything in base_specs).
* @property {object} codec The codec to use to decode data read from the source.
* @property {boolean} doesNotNeedSplitting Setting this value to true hints to the framework that the source
doesn't need splitting, and using SourceSplitRequest on it would
yield SOURCE_SPLIT_OUTCOME_USE_CURRENT.
E.g. a file splitter may set this to true when splitting a single file
into a set of byte ranges of appropriate size, and set this
to false when splitting a filepattern into individual files.
However, for efficiency, a file splitter may decide to produce
file subranges directly from the filepattern to avoid a splitting
round-trip.
See SourceSplitRequest for an overview of the splitting process.
This field is meaningful only in the Source objects populated
by the user (e.g. when filling in a DerivedSource).
Source objects supplied by the framework to the user don't have
this field populated.
* @property {object} spec The source to read from, plus its parameters.
*/
/**
* @typedef SplitInt64
* @memberOf! dataflow(v1b3)
* @type object
* @property {integer} highBits The high order bits, including the sign: n >> 32.
* @property {integer} lowBits The low order bits: n & 0xffffffff.
*/
/**
* @typedef WorkerPool
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} diskSourceImage Fully qualified source image for disks.
* @property {dataflow(v1b3).Package[]} packages Packages to be installed on workers.
* @property {string} teardownPolicy Sets the policy for determining when to turndown worker pool.
Allowed values are: `TEARDOWN_ALWAYS`, `TEARDOWN_ON_SUCCESS`, and
`TEARDOWN_NEVER`.
`TEARDOWN_ALWAYS` means workers are always torn down regardless of whether
the job succeeds. `TEARDOWN_ON_SUCCESS` means workers are torn down
if the job succeeds. `TEARDOWN_NEVER` means the workers are never torn
down.
If the workers are not torn down by the service, they will
continue to run and use Google Compute Engine VM resources in the
user's project until they are explicitly terminated by the user.
Because of this, Google recommends using the `TEARDOWN_ALWAYS`
policy except for small, manually supervised test jobs.
If unknown or unspecified, the service will attempt to choose a reasonable
default.
* @property {string} onHostMaintenance The action to take on host maintenance, as defined by the Google
Compute Engine API.
* @property {object} poolArgs Extra arguments for this worker pool.
* @property {integer} diskSizeGb Size of root disk for VMs, in GB. If zero or unspecified, the service will
attempt to choose a reasonable default.
* @property {string} workerHarnessContainerImage Required. Docker container image that executes the Cloud Dataflow worker
harness, residing in Google Container Registry.
* @property {string} machineType Machine type (e.g. "n1-standard-1"). If empty or unspecified, the
service will attempt to choose a reasonable default.
* @property {string} diskType Type of root disk for VMs. If empty or unspecified, the service will
attempt to choose a reasonable default.
* @property {string} kind The kind of the worker pool; currently only `harness` and `shuffle`
are supported.
* @property {dataflow(v1b3).Disk[]} dataDisks Data disks that are used by a VM in this workflow.
* @property {string} subnetwork Subnetwork to which VMs will be assigned, if desired. Expected to be of
the form "regions/REGION/subnetworks/SUBNETWORK".
* @property {string} ipConfiguration Configuration for VM IPs.
* @property {dataflow(v1b3).AutoscalingSettings} autoscalingSettings Settings for autoscaling of this WorkerPool.
* @property {dataflow(v1b3).TaskRunnerSettings} taskrunnerSettings Settings passed through to Google Compute Engine workers when
using the standard Dataflow task runner. Users should ignore
this field.
* @property {object} metadata Metadata to set on the Google Compute Engine VMs.
* @property {string} network Network to which VMs will be assigned. If empty or unspecified,
the service will use the network "default".
* @property {string} defaultPackageSet The default package set to install. This allows the service to
select a default set of packages which are useful to worker
harnesses written in a particular language.
* @property {integer} numThreadsPerWorker The number of threads per worker harness. If empty or unspecified, the
service will choose a number of threads (according to the number of cores
on the selected machine type for batch, or 1 by convention for streaming).
* @property {integer} numWorkers Number of Google Compute Engine workers in this pool needed to
execute the job. If zero or unspecified, the service will
attempt to choose a reasonable default.
* @property {string} zone Zone to run the worker pools in. If empty or unspecified, the service
will attempt to choose a reasonable default.
*/
/**
* @typedef SourceOperationRequest
* @memberOf! dataflow(v1b3)
* @type object
* @property {dataflow(v1b3).SourceGetMetadataRequest} getMetadata Information about a request to get metadata about a source.
* @property {dataflow(v1b3).SourceSplitRequest} split Information about a request to split a source.
*/
/**
* @typedef WorkItem
* @memberOf! dataflow(v1b3)
* @type object
* @property {dataflow(v1b3).SeqMapTask} seqMapTask Additional information for SeqMapTask WorkItems.
* @property {dataflow(v1b3).Package[]} packages Any required packages that need to be fetched in order to execute
this WorkItem.
* @property {string} projectId Identifies the cloud project this WorkItem belongs to.
* @property {string} reportStatusInterval Recommended reporting interval.
* @property {dataflow(v1b3).SourceOperationRequest} sourceOperationTask Additional information for source operation WorkItems.
* @property {dataflow(v1b3).StreamingSetupTask} streamingSetupTask Additional information for StreamingSetupTask WorkItems.
* @property {dataflow(v1b3).StreamingConfigTask} streamingConfigTask Additional information for StreamingConfigTask WorkItems.
* @property {string} leaseExpireTime Time when the lease on this Work will expire.
* @property {string} initialReportIndex The initial index to use when reporting the status of the WorkItem.
* @property {dataflow(v1b3).ShellTask} shellTask Additional information for ShellTask WorkItems.
* @property {dataflow(v1b3).StreamingComputationTask} streamingComputationTask Additional information for StreamingComputationTask WorkItems.
* @property {string} jobId Identifies the workflow job this WorkItem belongs to.
* @property {string} id Identifies this WorkItem.
* @property {string} configuration Work item-specific configuration as an opaque blob.
* @property {dataflow(v1b3).MapTask} mapTask Additional information for MapTask WorkItems.
*/
/**
* @typedef ResourceUtilizationReport
* @memberOf! dataflow(v1b3)
* @type object
* @property {dataflow(v1b3).CPUTime[]} cpuTime CPU utilization samples.
*/
/**
* @typedef ReportedParallelism
* @memberOf! dataflow(v1b3)
* @type object
* @property {boolean} isInfinite Specifies whether the parallelism is infinite. If true, "value" is
ignored.
Infinite parallelism means the service will assume that the work item
can always be split into more non-empty work items by dynamic splitting.
This is a work-around for lack of support for infinity by the current
JSON-based Java RPC stack.
* @property {number} value Specifies the level of parallelism in case it is finite.
*/
/**
* @typedef TopologyConfig
* @memberOf! dataflow(v1b3)
* @type object
* @property {integer} forwardingKeyBits The size (in bits) of keys that will be assigned to source messages.
* @property {object} userStageToComputationNameMap Maps user stage names to stable computation names.
* @property {dataflow(v1b3).ComputationTopology[]} computations The computations associated with a streaming Dataflow job.
* @property {dataflow(v1b3).DataDiskAssignment[]} dataDiskAssignments The disks assigned to a streaming Dataflow job.
* @property {integer} persistentStateVersion Version number for persistent state.
*/
/**
* @typedef SourceSplitOptions
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} desiredBundleSizeBytes The source should be split into a set of bundles where the estimated size
of each is approximately this many bytes.
* @property {string} desiredShardSizeBytes DEPRECATED in favor of desired_bundle_size_bytes.
*/
/**
* @typedef ReadInstruction
* @memberOf! dataflow(v1b3)
* @type object
* @property {dataflow(v1b3).Source} source The source to read from.
*/
/**
* @typedef WorkerSettings
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} baseUrl The base URL for accessing Google Cloud APIs.
When workers access Google Cloud APIs, they logically do so via
relative URLs. If this field is specified, it supplies the base
URL to use for resolving these relative URLs. The normative
algorithm used is defined by RFC 1808, "Relative Uniform Resource
Locators".
If not specified, the default value is "http://www.googleapis.com/"
* @property {boolean} reportingEnabled Whether to send work progress updates to the service.
* @property {string} servicePath The Cloud Dataflow service path relative to the root URL, for example,
"dataflow/v1b3/projects".
* @property {string} shuffleServicePath The Shuffle service path relative to the root URL, for example,
"shuffle/v1beta1".
* @property {string} workerId The ID of the worker running this pipeline.
* @property {string} tempStoragePrefix The prefix of the resources the system should use for temporary
storage.
The supported resource type is:
Google Cloud Storage:
storage.googleapis.com/{bucket}/{object}
bucket.storage.googleapis.com/{object}
*/
/**
* @typedef StreamingStageLocation
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} streamId Identifies the particular stream within the streaming Dataflow
job.
*/
/**
* @typedef DataDiskAssignment
* @memberOf! dataflow(v1b3)
* @type object
* @property {string[]} dataDisks Mounted data disks. The order is important a data disk's 0-based index in
this list defines which persistent directory the disk is mounted to, for
example the list of { "myproject-1014-104817-4c2-harness-0-disk-0" },
{ "myproject-1014-104817-4c2-harness-0-disk-1" }.
* @property {string} vmInstance VM instance name the data disks mounted to, for example
"myproject-1014-104817-4c2-harness-0".
*/
/**
* @typedef ApproximateSplitRequest
* @memberOf! dataflow(v1b3)
* @type object
* @property {dataflow(v1b3).Position} position A Position at which to split the work item.
* @property {number} fractionConsumed A fraction at which to split the work item, from 0.0 (beginning of the
input) to 1.0 (end of the input).
*/
/**
* @typedef Status
* @memberOf! dataflow(v1b3)
* @type object
* @property {integer} code The status code, which should be an enum value of google.rpc.Code.
* @property {string} message A developer-facing error message, which should be in English. Any
user-facing error message should be localized and sent in the
google.rpc.Status.details field, or localized by the client.
* @property {object[]} details A list of messages that carry the error details. There will be a
common set of message types for APIs to use.
*/
/**
* @typedef StreamLocation
* @memberOf! dataflow(v1b3)
* @type object
* @property {dataflow(v1b3).CustomSourceLocation} customSourceLocation The stream is a custom source.
* @property {dataflow(v1b3).StreamingStageLocation} streamingStageLocation The stream is part of another computation within the current
streaming Dataflow job.
* @property {dataflow(v1b3).PubsubLocation} pubsubLocation The stream is a pubsub stream.
* @property {dataflow(v1b3).StreamingSideInputLocation} sideInputLocation The stream is a streaming side input.
*/
/**
* @typedef SendWorkerMessagesResponse
* @memberOf! dataflow(v1b3)
* @type object
* @property {dataflow(v1b3).WorkerMessageResponse[]} workerMessageResponses The servers response to the worker messages.
*/
/**
* @typedef LeaseWorkItemResponse
* @memberOf! dataflow(v1b3)
* @type object
* @property {dataflow(v1b3).WorkItem[]} workItems A list of the leased WorkItems.
*/
/**
* @typedef TransformSummary
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} name User provided name for this transform instance.
* @property {string} id SDK generated id of this transform instance.
* @property {dataflow(v1b3).DisplayData[]} displayData Transform-specific display data.
* @property {string[]} outputCollectionName User names for all collection outputs to this transform.
* @property {string} kind Type of transform.
* @property {string[]} inputCollectionName User names for all collection inputs to this transform.
*/
/**
* @typedef StreamingComputationConfig
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} systemName System defined name for this computation.
* @property {string} stageName Stage name of this computation.
* @property {dataflow(v1b3).ParallelInstruction[]} instructions Instructions that comprise the computation.
* @property {string} computationId Unique identifier for this computation.
*/
/**
* @typedef Sink
* @memberOf! dataflow(v1b3)
* @type object
* @property {object} codec The codec to use to encode data written to the sink.
* @property {object} spec The sink to write to, plus its parameters.
*/
/**
* @typedef LaunchTemplateParameters
* @memberOf! dataflow(v1b3)
* @type object
* @property {dataflow(v1b3).RuntimeEnvironment} environment The runtime environment for the job.
* @property {object} parameters The runtime parameters to pass to the job.
* @property {string} jobName Required. The job name to use for the created job.
*/
/**
* @typedef FlattenInstruction
* @memberOf! dataflow(v1b3)
* @type object
* @property {dataflow(v1b3).InstructionInput[]} inputs Describes the inputs to the flatten instruction.
*/
/**
* @typedef PartialGroupByKeyInstruction
* @memberOf! dataflow(v1b3)
* @type object
* @property {object} inputElementCodec The codec to use for interpreting an element in the input PTable.
* @property {object} valueCombiningFn The value combining function to invoke.
* @property {string} originalCombineValuesInputStoreName If this instruction includes a combining function this is the name of the
intermediate store between the GBK and the CombineValues.
* @property {dataflow(v1b3).SideInputInfo[]} sideInputs Zero or more side inputs.
* @property {string} originalCombineValuesStepName If this instruction includes a combining function, this is the name of the
CombineValues instruction lifted into this instruction.
* @property {dataflow(v1b3).InstructionInput} input Describes the input to the partial group-by-key instruction.
*/
/**
* @typedef InstructionInput
* @memberOf! dataflow(v1b3)
* @type object
* @property {integer} producerInstructionIndex The index (origin zero) of the parallel instruction that produces
the output to be consumed by this input. This index is relative
to the list of instructions in this input's instruction's
containing MapTask.
* @property {integer} outputNum The output index (origin zero) within the producer.
*/
/**
* @typedef StageSource
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} name Dataflow service generated name for this source.
* @property {string} sizeBytes Size of the source, if measurable.
* @property {string} userName Human-readable name for this source; may be user or system generated.
* @property {string} originalTransformOrCollection User name for the original user transform or collection with which this
source is most closely associated.
*/
/**
* @typedef StringList
* @memberOf! dataflow(v1b3)
* @type object
* @property {string[]} elements Elements of the list.
*/
/**
* @typedef DisplayData
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} int64Value Contains value if the data is of int64 type.
* @property {string} durationValue Contains value if the data is of duration type.
* @property {string} namespace The namespace for the key. This is usually a class name or programming
language namespace (i.e. python module) which defines the display data.
This allows a dax monitoring system to specially handle the data
and perform custom rendering.
* @property {number} floatValue Contains value if the data is of float type.
* @property {string} key The key identifying the display data.
This is intended to be used as a label for the display data
when viewed in a dax monitoring system.
* @property {string} shortStrValue A possible additional shorter value to display.
For example a java_class_name_value of com.mypackage.MyDoFn
will be stored with MyDoFn as the short_str_value and
com.mypackage.MyDoFn as the java_class_name value.
short_str_value can be displayed and java_class_name_value
will be displayed as a tooltip.
* @property {string} url An optional full URL.
* @property {string} label An optional label to display in a dax UI for the element.
* @property {string} timestampValue Contains value if the data is of timestamp type.
* @property {boolean} boolValue Contains value if the data is of a boolean type.
* @property {string} javaClassValue Contains value if the data is of java class type.
* @property {string} strValue Contains value if the data is of string type.
*/
/**
* @typedef LeaseWorkItemRequest
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} currentWorkerTime The current timestamp at the worker.
* @property {string[]} workItemTypes Filter for WorkItem type.
* @property {string} location The location which contains the WorkItem's job.
* @property {string[]} workerCapabilities Worker capabilities. WorkItems might be limited to workers with specific
capabilities.
* @property {string} workerId Identifies the worker leasing work -- typically the ID of the
virtual machine running the worker.
* @property {string} requestedLeaseDuration The initial lease period.
*/
/**
* @typedef GetDebugConfigRequest
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} location The location which contains the job specified by job_id.
* @property {string} componentId The internal component id for which debug configuration is
requested.
* @property {string} workerId The worker id, i.e., VM hostname.
*/
/**
* @typedef GetTemplateResponse
* @memberOf! dataflow(v1b3)
* @type object
* @property {dataflow(v1b3).Status} status The status of the get template request. Any problems with the
request will be indicated in the error_details.
* @property {dataflow(v1b3).TemplateMetadata} metadata The template metadata describing the template name, available
parameters, etc.
*/
/**
* @typedef ReportWorkItemStatusRequest
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} workerId The ID of the worker reporting the WorkItem status. If this
does not match the ID of the worker which the Dataflow service
believes currently has the lease on the WorkItem, the report
will be dropped (with an error response).
* @property {string} currentWorkerTime The current timestamp at the worker.
* @property {string} location The location which contains the WorkItem's job.
* @property {dataflow(v1b3).WorkItemStatus[]} workItemStatuses The order is unimportant, except that the order of the
WorkItemServiceState messages in the ReportWorkItemStatusResponse
corresponds to the order of WorkItemStatus messages here.
*/
/**
* @typedef PipelineDescription
* @memberOf! dataflow(v1b3)
* @type object
* @property {dataflow(v1b3).TransformSummary[]} originalPipelineTransform Description of each transform in the pipeline and collections between them.
* @property {dataflow(v1b3).DisplayData[]} displayData Pipeline level display data.
* @property {dataflow(v1b3).ExecutionStageSummary[]} executionPipelineStage Description of each stage of execution of the pipeline.
*/
/**
* @typedef StreamingConfigTask
* @memberOf! dataflow(v1b3)
* @type object
* @property {object} userStepToStateFamilyNameMap Map from user step names to state families.
* @property {dataflow(v1b3).StreamingComputationConfig[]} streamingComputationConfigs Set of computation configuration information.
*/
/**
* @typedef Step
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} name The name that identifies the step. This must be unique for each
step with respect to all other steps in the Cloud Dataflow job.
* @property {string} kind The kind of step in the Cloud Dataflow job.
* @property {object} properties Named properties associated with the step. Each kind of
predefined step has its own required set of properties.
Must be provided on Create. Only retrieved with JOB_VIEW_ALL.
*/
/**
* @typedef JobExecutionInfo
* @memberOf! dataflow(v1b3)
* @type object
* @property {object} stages A mapping from each stage to the information about that stage.
*/
/**
* @typedef FailedLocation
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} name The name of the failed location.
*/
/**
* @typedef Disk
* @memberOf! dataflow(v1b3)
* @type object
* @property {integer} sizeGb Size of disk in GB. If zero or unspecified, the service will
attempt to choose a reasonable default.
* @property {string} diskType Disk storage type, as defined by Google Compute Engine. This
must be a disk type appropriate to the project and zone in which
the workers will run. If unknown or unspecified, the service
will attempt to choose a reasonable default.
For example, the standard persistent disk type is a resource name
typically ending in "pd-standard". If SSD persistent disks are
available, the resource name typically ends with "pd-ssd". The
actual valid values are defined the Google Compute Engine API,
not by the Cloud Dataflow API; consult the Google Compute Engine
documentation for more information about determining the set of
available disk types for a particular project and zone.
Google Compute Engine Disk types are local to a particular
project in a particular zone, and so the resource name will
typically look something like this:
compute.googleapis.com/projects/project-id/zones/zone/diskTypes/pd-standard
* @property {string} mountPoint Directory in a VM where disk is mounted.
*/
/**
* @typedef CounterMetadata
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} standardUnits System defined Units, see above enum.
* @property {string} otherUnits A string referring to the unit type.
* @property {string} kind Counter aggregation kind.
* @property {string} description Human-readable description of the counter semantics.
*/
/**
* @typedef ListJobMessagesResponse
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} nextPageToken The token to obtain the next page of results if there are more.
* @property {dataflow(v1b3).JobMessage[]} jobMessages Messages in ascending timestamp order.
*/
/**
* @typedef ApproximateReportedProgress
* @memberOf! dataflow(v1b3)
* @type object
* @property {number} fractionConsumed Completion as fraction of the input consumed, from 0.0 (beginning, nothing
consumed), to 1.0 (end of the input, entire input consumed).
* @property {dataflow(v1b3).ReportedParallelism} consumedParallelism Total amount of parallelism in the portion of input of this task that has
already been consumed and is no longer active. In the first two examples
above (see remaining_parallelism), the value should be 29 or 2
respectively. The sum of remaining_parallelism and consumed_parallelism
should equal the total amount of parallelism in this work item. If
specified, must be finite.
* @property {dataflow(v1b3).ReportedParallelism} remainingParallelism Total amount of parallelism in the input of this task that remains,
(i.e. can be delegated to this task and any new tasks via dynamic
splitting). Always at least 1 for non-finished work items and 0 for
finished.
"Amount of parallelism" refers to how many non-empty parts of the input
can be read in parallel. This does not necessarily equal number
of records. An input that can be read in parallel down to the
individual records is called "perfectly splittable".
An example of non-perfectly parallelizable input is a block-compressed
file format where a block of records has to be read as a whole,
but different blocks can be read in parallel.
Examples:
* If we are processing record #30 (starting at 1) out of 50 in a perfectly
splittable 50-record input, this value should be 21 (20 remaining + 1
current).
* If we are reading through block 3 in a block-compressed file consisting
of 5 blocks, this value should be 3 (since blocks 4 and 5 can be
processed in parallel by new tasks via dynamic splitting and the current
task remains processing block 3).
* If we are reading through the last block in a block-compressed file,
or reading or processing the last record in a perfectly splittable
input, this value should be 1, because apart from the current task, no
additional remainder can be split off.
* @property {dataflow(v1b3).Position} position A Position within the work to represent a progress.
*/
/**
* @typedef IntegerList
* @memberOf! dataflow(v1b3)
* @type object
* @property {dataflow(v1b3).SplitInt64[]} elements Elements of the list.
*/
/**
* @typedef StateFamilyConfig
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} stateFamily The state family value.
* @property {boolean} isRead If true, this family corresponds to a read operation.
*/
/**
* @typedef ResourceUtilizationReportResponse
* @memberOf! dataflow(v1b3)
* @type object
*/
/**
* @typedef SourceSplitResponse
* @memberOf! dataflow(v1b3)
* @type object
* @property {dataflow(v1b3).DerivedSource[]} bundles If outcome is SPLITTING_HAPPENED, then this is a list of bundles
into which the source was split. Otherwise this field is ignored.
This list can be empty, which means the source represents an empty input.
* @property {dataflow(v1b3).SourceSplitShard[]} shards DEPRECATED in favor of bundles.
* @property {string} outcome Indicates whether splitting happened and produced a list of bundles.
If this is USE_CURRENT_SOURCE_AS_IS, the current source should
be processed "as is" without splitting. "bundles" is ignored in this case.
If this is SPLITTING_HAPPENED, then "bundles" contains a list of
bundles into which the source was split.
*/
/**
* @typedef ParallelInstruction
* @memberOf! dataflow(v1b3)
* @type object
* @property {dataflow(v1b3).InstructionOutput[]} outputs Describes the outputs of the instruction.
* @property {string} name User-provided name of this operation.
* @property {dataflow(v1b3).ReadInstruction} read Additional information for Read instructions.
* @property {dataflow(v1b3).ParDoInstruction} parDo Additional information for ParDo instructions.
* @property {dataflow(v1b3).FlattenInstruction} flatten Additional information for Flatten instructions.
* @property {string} originalName System-defined name for the operation in the original workflow graph.
* @property {string} systemName System-defined name of this operation.
Unique across the workflow.
* @property {dataflow(v1b3).WriteInstruction} write Additional information for Write instructions.
* @property {dataflow(v1b3).PartialGroupByKeyInstruction} partialGroupByKey Additional information for PartialGroupByKey instructions.
*/
/**
* @typedef Package
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} name The name of the package.
* @property {string} location The resource to read the package from. The supported resource type is:
Google Cloud Storage:
storage.googleapis.com/{bucket}
bucket.storage.googleapis.com/
*/
/**
* @typedef KeyRangeDataDiskAssignment
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} start The start (inclusive) of the key range.
* @property {string} dataDisk The name of the data disk where data for this range is stored.
This name is local to the Google Cloud Platform project and uniquely
identifies the disk within that project, for example
"myproject-1014-104817-4c2-harness-0-disk-1".
* @property {string} end The end (exclusive) of the key range.
*/
/**
* @typedef ParDoInstruction
* @memberOf! dataflow(v1b3)
* @type object
* @property {object} userFn The user function to invoke.
* @property {dataflow(v1b3).InstructionInput} input The input.
* @property {integer} numOutputs The number of outputs.
* @property {dataflow(v1b3).SideInputInfo[]} sideInputs Zero or more side inputs.
* @property {dataflow(v1b3).MultiOutputInfo[]} multiOutputInfos Information about each of the outputs, if user_fn is a MultiDoFn.
*/
/**
* @typedef MetricUpdate
* @memberOf! dataflow(v1b3)
* @type object
* @property {any} set Worker-computed aggregate value for the "Set" aggregation kind. The only
possible value type is a list of Values whose type can be Long, Double,
or String, according to the metric's type. All Values in the list must
be of the same type.
* @property {boolean} cumulative True if this metric is reported as the total cumulative aggregate
value accumulated since the worker started working on this WorkItem.
By default this is false, indicating that this metric is reported
as a delta that is not associated with any WorkItem.
* @property {any} internal Worker-computed aggregate value for internal use by the Dataflow
service.
* @property {string} kind Metric aggregation kind. The possible metric aggregation kinds are
"Sum", "Max", "Min", "Mean", "Set", "And", and "Or".
The specified aggregation kind is case-insensitive.
If omitted, this is not an aggregated value but instead
a single metric sample value.
* @property {any} scalar Worker-computed aggregate value for aggregation kinds "Sum", "Max", "Min",
"And", and "Or". The possible value types are Long, Double, and Boolean.
* @property {any} meanCount Worker-computed aggregate value for the "Mean" aggregation kind.
This holds the count of the aggregated values and is used in combination
with mean_sum above to obtain the actual mean aggregate value.
The only possible value type is Long.
* @property {any} meanSum Worker-computed aggregate value for the "Mean" aggregation kind.
This holds the sum of the aggregated values and is used in combination
with mean_count below to obtain the actual mean aggregate value.
The only possible value types are Long and Double.
* @property {string} updateTime Timestamp associated with the metric value. Optional when workers are
reporting work progress; it will be filled in responses from the
metrics API.
* @property {dataflow(v1b3).MetricStructuredName} name Name of the metric.
*/
/**
* @typedef CounterStructuredName
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} componentStepName Name of the optimized step being executed by the workers.
* @property {string} portion Portion of this counter, either key or value.
* @property {string} originalStepName System generated name of the original step in the user's graph, before
optimization.
* @property {string} workerId ID of a particular worker.
* @property {string} originNamespace A string containing a more specific namespace of the counter's origin.
* @property {string} name Counter name. Not necessarily globally-unique, but unique within the
context of the other fields.
Required.
* @property {string} origin One of the standard Origins defined above.
* @property {string} executionStepName Name of the stage. An execution step contains multiple component steps.
*/
/**
* @typedef ApproximateProgress
* @memberOf! dataflow(v1b3)
* @type object
* @property {number} percentComplete Obsolete.
* @property {string} remainingTime Obsolete.
* @property {dataflow(v1b3).Position} position Obsolete.
*/
/**
* @typedef WorkerMessageResponse
* @memberOf! dataflow(v1b3)
* @type object
* @property {dataflow(v1b3).ResourceUtilizationReportResponse} workerMetricsResponse Service's response to reporting worker metrics (currently empty).
* @property {dataflow(v1b3).WorkerHealthReportResponse} workerHealthReportResponse The service's response to a worker's health report.
*/
/**
* @typedef TemplateMetadata
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} name Required. The name of the template.
* @property {dataflow(v1b3).ParameterMetadata[]} parameters The parameters for the template.
* @property {string} description Optional. A description of the template.
* @property {boolean} bypassTempDirValidation If true, will bypass the validation that the temp directory is
writable. This should only be used with templates for pipelines
that are guaranteed not to need to write to the temp directory,
which is subject to change based on the optimizer.
*/
/**
* @typedef WorkerMessage
* @memberOf! dataflow(v1b3)
* @type object
* @property {dataflow(v1b3).WorkerHealthReport} workerHealthReport The health of a worker.
* @property {dataflow(v1b3).WorkerMessageCode} workerMessageCode A worker message code.
* @property {dataflow(v1b3).ResourceUtilizationReport} workerMetrics Resource metrics reported by workers.
* @property {object} labels Labels are used to group WorkerMessages.
For example, a worker_message about a particular container
might have the labels:
{ "JOB_ID": "2015-04-22",
"WORKER_ID": "wordcount-vm-2015…"
"CONTAINER_TYPE": "worker",
"CONTAINER_ID": "ac1234def"}
Label tags typically correspond to Label enum values. However, for ease
of development other strings can be used as tags. LABEL_UNSPECIFIED should
not be used here.
* @property {string} time The timestamp of the worker_message.
*/
/**
* @typedef JobMetrics
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} metricTime Timestamp as of which metric values are current.
* @property {dataflow(v1b3).MetricUpdate[]} metrics All metrics for this job.
*/
/**
* @typedef FloatingPointList
* @memberOf! dataflow(v1b3)
* @type object
* @property {number[]} elements Elements of the list.
*/
/**
* @typedef CounterUpdate
* @memberOf! dataflow(v1b3)
* @type object
* @property {dataflow(v1b3).SplitInt64} integer Integer value for Sum, Max, Min.
* @property {dataflow(v1b3).CounterStructuredNameAndMetadata} structuredNameAndMetadata Counter structured name and metadata.
* @property {dataflow(v1b3).IntegerList} integerList List of integers, for Set.
* @property {number} floatingPoint Floating point value for Sum, Max, Min.
* @property {dataflow(v1b3).IntegerMean} integerMean Integer mean aggregation value for Mean.
* @property {boolean} cumulative True if this counter is reported as the total cumulative aggregate
value accumulated since the worker started working on this WorkItem.
By default this is false, indicating that this counter is reported
as a delta.
* @property {any} internal Value for internally-defined counters used by the Dataflow service.
* @property {dataflow(v1b3).FloatingPointMean} floatingPointMean Floating point mean aggregation value for Mean.
* @property {boolean} boolean Boolean value for And, Or.
* @property {dataflow(v1b3).NameAndKind} nameAndKind Counter name and aggregation type.
* @property {dataflow(v1b3).DistributionUpdate} distribution Distribution data
* @property {dataflow(v1b3).StringList} stringList List of strings, for Set.
* @property {string} shortId The service-generated short identifier for this counter.
The short_id -> (name, metadata) mapping is constant for the lifetime of
a job.
* @property {dataflow(v1b3).FloatingPointList} floatingPointList List of floating point numbers, for Set.
*/
/**
* @typedef SourceMetadata
* @memberOf! dataflow(v1b3)
* @type object
* @property {boolean} producesSortedKeys Whether this source is known to produce key/value pairs with
the (encoded) keys in lexicographically sorted order.
* @property {boolean} infinite Specifies that the size of this source is known to be infinite
(this is a streaming source).
* @property {string} estimatedSizeBytes An estimate of the total size (in bytes) of the data that would be
read from this source. This estimate is in terms of external storage
size, before any decompression or other processing done by the reader.
*/
/**
* @typedef DistributionUpdate
* @memberOf! dataflow(v1b3)
* @type object
* @property {dataflow(v1b3).SplitInt64} count The count of the number of elements present in the distribution.
* @property {dataflow(v1b3).SplitInt64} min The minimum value present in the distribution.
* @property {number} sumOfSquares Use a double since the sum of squares is likely to overflow int64.
* @property {dataflow(v1b3).SplitInt64} max The maximum value present in the distribution.
* @property {dataflow(v1b3).SplitInt64} sum Use an int64 since we'd prefer the added precision. If overflow is a common
problem we can detect it and use an additional int64 or a double.
*/
/**
* @typedef SourceFork
* @memberOf! dataflow(v1b3)
* @type object
* @property {dataflow(v1b3).DerivedSource} residualSource DEPRECATED
* @property {dataflow(v1b3).SourceSplitShard} primary DEPRECATED
* @property {dataflow(v1b3).DerivedSource} primarySource DEPRECATED
* @property {dataflow(v1b3).SourceSplitShard} residual DEPRECATED
*/
/**
* @typedef WorkerHealthReportResponse
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} reportInterval A positive value indicates the worker should change its reporting interval
to the specified value.
The default value of zero means no change in report rate is requested by
the server.
*/
/**
* @typedef WorkItemStatus
* @memberOf! dataflow(v1b3)
* @type object
* @property {string} requestedLeaseDuration Amount of time the worker requests for its lease.
* @property {string} reportIndex The report index. When a WorkItem is leased, the lease will
contain an initial report index. When a WorkItem's status is
reported to the system, the report should be sent with
that report index, and the response will contain the index the
worker should use for the next report. Reports received with
unexpected index values will be rejected by the service.
In order to preserve idempotency, the worker should not alter the
contents of a report, even if the worker must submit the same
report multiple times before getting back a response. The worker
should not submit a subsequent report until the response for the
previous report had been received from the service.
* @property {dataflow(v1b3).Position} stopPosition A worker may split an active map task in two parts, "primary" and
"residual", continuing to process the primary part and returning the
residual part into the pool of available work.
This event is called a "dynamic split" and is critical to the dynamic
work rebalancing feature. The two obtained sub-tasks are called
"parts" of the split.
The parts, if concatenated, must represent the same input as would
be read by the current task if the split did not happen.
The exact way in which the original task is decomposed into the two
parts is specified either as a position demarcating them
(stop_position), or explicitly as two DerivedSources, if this
task consumes a user-defined source type (dynamic_source_split).
The "current" task is adjusted as a result of the split: after a task
with range [A, B) sends a stop_position update at C, its range is
considered to be [A, C), e.g.:
* Progress should be interpreted relative to the new range, e.g.
"75% completed" means "75% of [A, C) completed"
* The worker should interpret proposed_stop_position relative to the
new range, e.g. "split at 68%" should be interpreted as
"split at 68% of [A, C)".
* If the worker chooses to split again using stop_position, only
stop_positions in [A, C) will be accepted.
* Etc.
dynamic_source_split has similar semantics: e.g., if a task with
source S splits using dynamic_source_split into {P, R}
(where P and R must be together equivalent to S), then subsequent
progress and proposed_stop_position should be interpreted relative
to P, and in a potential subsequent dynamic_source_split into {P', R'},
P' and R' must be together equivalent to P, etc.
* @property {boolean} completed True if the WorkItem was completed (successfully or unsuccessfully).
* @property {dataflow(v1b3).ApproximateReportedProgress} reportedProgress The worker's progress through this WorkItem.
* @property {dataflow(v1b3).SourceFork} sourceFork DEPRECATED in favor of dynamic_source_split.
* @property {dataflow(v1b3).CounterUpdate[]} counterUpdates Worker output counters for this WorkItem.
* @property {string} workItemId Identifies the WorkItem.
* @property {dataflow(v1b3).Status[]} errors Specifies errors which occurred during processing. If errors are
provided, and completed = true, then the WorkItem is considered
to have failed.
* @property {dataflow(v1b3).MetricUpdate[]} metricUpdates DEPRECATED in favor of counter_updates.
* @property {dataflow(v1b3).DynamicSourceSplit} dynamicSourceSplit See documentation of stop_position.
* @property {dataflow(v1b3).SourceOperationResponse} sourceOperationResponse If the work item represented a SourceOperationRequest, and the work
is completed, contains the result of the operation.
* @property {dataflow(v1b3).ApproximateProgress} progress DEPRECATED in favor of reported_progress.
*/
module.exports = Dataflow;
|
| File | Statements | Branches | Functions | Lines | |||||
|---|---|---|---|---|---|---|---|---|---|
| v1alpha1.js | 4.08% | (4 / 98) | 0% | (0 / 62) | 0% | (0 / 16) | 4.08% | (4 / 98) |
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* Google Cloud Dataproc API
*
* Manages Hadoop-based clusters and jobs on Google Cloud Platform.
*
* @example
* var google = require('googleapis');
* var dataproc = google.dataproc('v1alpha1');
*
* @namespace dataproc
* @type {Function}
* @version v1alpha1
* @variation v1alpha1
* @param {object=} options Options for Dataproc
*/
function Dataproc(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.operations = {
/**
* dataproc.operations.cancel
*
* @desc Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns google.rpc.Code.UNIMPLEMENTED. Clients may use Operations.GetOperation or other methods to check whether the cancellation succeeded or the operation completed despite cancellation.
*
* @example
* // PRE-REQUISITES:
* // ---------------
* // 1. If not already done, enable the Google Cloud Dataproc API and check the quota for your project at
* // https://console.developers.google.com/apis/api/dataproc_component/quotas
* // 2. This sample uses Application Default Credentials for Auth. If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk/ and run 'gcloud beta auth application-default login'
* // 3. To install the client library and Application Default Credentials library, run:
* // 'npm install googleapis --save'
* var google = require('googleapis');
* var dataproc = google.dataproc('v1alpha1');
*
* google.auth.getApplicationDefault(function(err, authClient) {
* if (err) {
* console.log('Authentication failed because of ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
*
* var request = {
* // TODO: Change placeholders below to appropriate parameter values for the 'cancel' method:
*
* // The name of the operation resource to be cancelled.
* name: "",
* resource: {},
* // Auth client
* auth: authClient
* };
*
* dataproc.operations.cancel(request, function(err, result) {
* if (err) {
* console.log(err);
* } else {
* console.log(result);
* }
* });
* });
*
* @alias dataproc.operations.cancel
* @memberOf! dataproc(v1alpha1)
*
* @param {object} params Parameters for request
* @param {string} params.name The name of the operation resource to be cancelled.
* @param {dataproc(v1alpha1).CancelOperationRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
cancel: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataproc.googleapis.com/v1alpha1/{name}:cancel',
method: 'POST'
}, options),
params: params,
requiredParams: ['name'],
pathParams: ['name'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dataproc.operations.delete
*
* @desc Deletes a long-running operation. It indicates the client is no longer interested in the operation result. It does not cancel the operation.
*
* @example
* // PRE-REQUISITES:
* // ---------------
* // 1. If not already done, enable the Google Cloud Dataproc API and check the quota for your project at
* // https://console.developers.google.com/apis/api/dataproc_component/quotas
* // 2. This sample uses Application Default Credentials for Auth. If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk/ and run 'gcloud beta auth application-default login'
* // 3. To install the client library and Application Default Credentials library, run:
* // 'npm install googleapis --save'
* var google = require('googleapis');
* var dataproc = google.dataproc('v1alpha1');
*
* google.auth.getApplicationDefault(function(err, authClient) {
* if (err) {
* console.log('Authentication failed because of ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
*
* var request = {
* // TODO: Change placeholders below to appropriate parameter values for the 'delete' method:
*
* // The name of the operation resource to be deleted.
* name: "",
* // Auth client
* auth: authClient
* };
*
* dataproc.operations.delete(request, function(err, result) {
* if (err) {
* console.log(err);
* } else {
* console.log(result);
* }
* });
* });
*
* @alias dataproc.operations.delete
* @memberOf! dataproc(v1alpha1)
*
* @param {object} params Parameters for request
* @param {string} params.name The name of the operation resource to be deleted.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataproc.googleapis.com/v1alpha1/{name}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['name'],
pathParams: ['name'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dataproc.operations.get
*
* @desc Gets the latest state of a long-running operation. Clients may use this method to poll the operation result at intervals as recommended by the API service.
*
* @example
* // PRE-REQUISITES:
* // ---------------
* // 1. If not already done, enable the Google Cloud Dataproc API and check the quota for your project at
* // https://console.developers.google.com/apis/api/dataproc_component/quotas
* // 2. This sample uses Application Default Credentials for Auth. If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk/ and run 'gcloud beta auth application-default login'
* // 3. To install the client library and Application Default Credentials library, run:
* // 'npm install googleapis --save'
* var google = require('googleapis');
* var dataproc = google.dataproc('v1alpha1');
*
* google.auth.getApplicationDefault(function(err, authClient) {
* if (err) {
* console.log('Authentication failed because of ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
*
* var request = {
* // TODO: Change placeholders below to appropriate parameter values for the 'get' method:
*
* // The operation resource name.
* name: "",
* // Auth client
* auth: authClient
* };
*
* dataproc.operations.get(request, function(err, result) {
* if (err) {
* console.log(err);
* } else {
* console.log(result);
* }
* });
* });
*
* @alias dataproc.operations.get
* @memberOf! dataproc(v1alpha1)
*
* @param {object} params Parameters for request
* @param {string} params.name The operation resource name.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataproc.googleapis.com/v1alpha1/{name}',
method: 'GET'
}, options),
params: params,
requiredParams: ['name'],
pathParams: ['name'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dataproc.operations.list
*
* @desc Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns google.rpc.Code.UNIMPLEMENTED.
*
* @example
* // PRE-REQUISITES:
* // ---------------
* // 1. If not already done, enable the Google Cloud Dataproc API and check the quota for your project at
* // https://console.developers.google.com/apis/api/dataproc_component/quotas
* // 2. This sample uses Application Default Credentials for Auth. If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk/ and run 'gcloud beta auth application-default login'
* // 3. To install the client library and Application Default Credentials library, run:
* // 'npm install googleapis --save'
* var google = require('googleapis');
* var dataproc = google.dataproc('v1alpha1');
*
* google.auth.getApplicationDefault(function(err, authClient) {
* if (err) {
* console.log('Authentication failed because of ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
*
* var request = {
* // TODO: Change placeholders below to appropriate parameter values for the 'list' method:
*
* // The operation collection name.
* name: "",
* // Auth client
* auth: authClient
* };
*
*
* var recur = function(err, result) {
* if (err) {
* console.log(err);
* } else {
* console.log(result);
* if (result.nextPageToken) {
* request.pageToken = result.nextPageToken;
* dataproc.operations.list(request, recur);
* }
* }
* };
*
* dataproc.operations.list(request, recur);
* });
*
* @alias dataproc.operations.list
* @memberOf! dataproc(v1alpha1)
*
* @param {object} params Parameters for request
* @param {string=} params.filter Required A JSON object that contains filters for the list operation, in the format {"key1":"value1","key2":"value2", ..., }. Possible keys include project_id, cluster_name, and operation_state_matcher.If project_id is set, requests the list of operations that belong to the specified Google Cloud Platform project ID. This key is required.If cluster_name is set, requests the list of operations that were submitted to the specified cluster name. This key is optional.If operation_state_matcher is set, requests the list of operations that match one of the following status options: ALL, ACTIVE, or NON_ACTIVE.
* @param {string} params.name The operation collection name.
* @param {string=} params.pageToken The standard List page token.
* @param {integer=} params.pageSize The standard List page size.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataproc.googleapis.com/v1alpha1/{name}',
method: 'GET'
}, options),
params: params,
requiredParams: ['name'],
pathParams: ['name'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.projects = {
regions: {
jobs: {
/**
* dataproc.projects.regions.jobs.submit
*
* @desc Submits a job to a cluster.
*
* @example
* // PRE-REQUISITES:
* // ---------------
* // 1. If not already done, enable the Google Cloud Dataproc API and check the quota for your project at
* // https://console.developers.google.com/apis/api/dataproc_component/quotas
* // 2. This sample uses Application Default Credentials for Auth. If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk/ and run 'gcloud beta auth application-default login'
* // 3. To install the client library and Application Default Credentials library, run:
* // 'npm install googleapis --save'
* var google = require('googleapis');
* var dataproc = google.dataproc('v1alpha1');
*
* google.auth.getApplicationDefault(function(err, authClient) {
* if (err) {
* console.log('Authentication failed because of ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
*
* var request = {
* // TODO: Change placeholders below to appropriate parameter values for the 'submit' method:
*
* // [Required] The ID of the Google Cloud Platform project that the job belongs to.
* projectId: "",
* // [Required] The Dataproc region in which to handle the request.
* region: "",
* resource: {},
* // Auth client
* auth: authClient
* };
*
* dataproc.projects.regions.jobs.submit(request, function(err, result) {
* if (err) {
* console.log(err);
* } else {
* console.log(result);
* }
* });
* });
*
* @alias dataproc.projects.regions.jobs.submit
* @memberOf! dataproc(v1alpha1)
*
* @param {object} params Parameters for request
* @param {string} params.region Required The Dataproc region in which to handle the request.
* @param {string} params.projectId Required The ID of the Google Cloud Platform project that the job belongs to.
* @param {dataproc(v1alpha1).SubmitJobRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
submit: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataproc.googleapis.com/v1alpha1/projects/{projectId}/regions/{region}/jobs:submit',
method: 'POST'
}, options),
params: params,
requiredParams: ['projectId', 'region'],
pathParams: ['region', 'projectId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dataproc.projects.regions.jobs.delete
*
* @desc Deletes the job from the project. If the job is active, the delete fails, and the response returns FAILED_PRECONDITION.
*
* @example
* // PRE-REQUISITES:
* // ---------------
* // 1. If not already done, enable the Google Cloud Dataproc API and check the quota for your project at
* // https://console.developers.google.com/apis/api/dataproc_component/quotas
* // 2. This sample uses Application Default Credentials for Auth. If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk/ and run 'gcloud beta auth application-default login'
* // 3. To install the client library and Application Default Credentials library, run:
* // 'npm install googleapis --save'
* var google = require('googleapis');
* var dataproc = google.dataproc('v1alpha1');
*
* google.auth.getApplicationDefault(function(err, authClient) {
* if (err) {
* console.log('Authentication failed because of ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
*
* var request = {
* // TODO: Change placeholders below to appropriate parameter values for the 'delete' method:
*
* // [Required] The ID of the Google Cloud Platform project that the job belongs to.
* projectId: "",
* // [Required] The Dataproc region in which to handle the request.
* region: "",
* // [Required] The job ID.
* jobId: "",
* // Auth client
* auth: authClient
* };
*
* dataproc.projects.regions.jobs.delete(request, function(err, result) {
* if (err) {
* console.log(err);
* } else {
* console.log(result);
* }
* });
* });
*
* @alias dataproc.projects.regions.jobs.delete
* @memberOf! dataproc(v1alpha1)
*
* @param {object} params Parameters for request
* @param {string} params.region Required The Dataproc region in which to handle the request.
* @param {string} params.projectId Required The ID of the Google Cloud Platform project that the job belongs to.
* @param {string} params.jobId Required The job ID.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataproc.googleapis.com/v1alpha1/projects/{projectId}/regions/{region}/jobs/{jobId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['projectId', 'region', 'jobId'],
pathParams: ['region', 'projectId', 'jobId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dataproc.projects.regions.jobs.list
*
* @desc Lists regions/{region}/jobs in a project.
*
* @alias dataproc.projects.regions.jobs.list
* @memberOf! dataproc(v1alpha1)
*
* @param {object} params Parameters for request
* @param {string} params.projectId Required The ID of the Google Cloud Platform project that the job belongs to.
* @param {string} params.region Required The Dataproc region in which to handle the request.
* @param {dataproc(v1alpha1).ListJobsRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataproc.googleapis.com/v1alpha1/projects/{projectId}/regions/{region}/jobs:list',
method: 'POST'
}, options),
params: params,
requiredParams: ['projectId', 'region'],
pathParams: ['projectId', 'region'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dataproc.projects.regions.jobs.cancel
*
* @desc Starts a job cancellation request. To access the job resource after cancellation, call regions/{region}/jobs:list or regions/{region}/jobs:get.
*
* @example
* // PRE-REQUISITES:
* // ---------------
* // 1. If not already done, enable the Google Cloud Dataproc API and check the quota for your project at
* // https://console.developers.google.com/apis/api/dataproc_component/quotas
* // 2. This sample uses Application Default Credentials for Auth. If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk/ and run 'gcloud beta auth application-default login'
* // 3. To install the client library and Application Default Credentials library, run:
* // 'npm install googleapis --save'
* var google = require('googleapis');
* var dataproc = google.dataproc('v1alpha1');
*
* google.auth.getApplicationDefault(function(err, authClient) {
* if (err) {
* console.log('Authentication failed because of ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
*
* var request = {
* // TODO: Change placeholders below to appropriate parameter values for the 'cancel' method:
*
* // [Required] The ID of the Google Cloud Platform project that the job belongs to.
* projectId: "",
* // [Required] The Dataproc region in which to handle the request.
* region: "",
* // [Required] The job ID.
* jobId: "",
* resource: {},
* // Auth client
* auth: authClient
* };
*
* dataproc.projects.regions.jobs.cancel(request, function(err, result) {
* if (err) {
* console.log(err);
* } else {
* console.log(result);
* }
* });
* });
*
* @alias dataproc.projects.regions.jobs.cancel
* @memberOf! dataproc(v1alpha1)
*
* @param {object} params Parameters for request
* @param {string} params.projectId Required The ID of the Google Cloud Platform project that the job belongs to.
* @param {string} params.jobId Required The job ID.
* @param {string} params.region Required The Dataproc region in which to handle the request.
* @param {dataproc(v1alpha1).CancelJobRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
cancel: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataproc.googleapis.com/v1alpha1/projects/{projectId}/regions/{region}/jobs/{jobId}:cancel',
method: 'POST'
}, options),
params: params,
requiredParams: ['projectId', 'region', 'jobId'],
pathParams: ['projectId', 'jobId', 'region'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dataproc.projects.regions.jobs.patch
*
* @desc Updates a job in a project.
*
* @alias dataproc.projects.regions.jobs.patch
* @memberOf! dataproc(v1alpha1)
*
* @param {object} params Parameters for request
* @param {string} params.projectId Required The ID of the Google Cloud Platform project that the job belongs to.
* @param {string} params.jobId Required The job ID.
* @param {string} params.region Required The Dataproc region in which to handle the request.
* @param {string=} params.updateMask Required Specifies the path, relative to <code>Job</code>, of the field to update. For example, to update the labels of a Job the <code>update_mask</code> parameter would be specified as <code>labels</code>, and the PATCH request body would specify the new value. <strong>Note:</strong> Currently, <code>labels</code> is the only field that can be updated.
* @param {dataproc(v1alpha1).Job} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataproc.googleapis.com/v1alpha1/projects/{projectId}/regions/{region}/jobs/{jobId}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['projectId', 'region', 'jobId'],
pathParams: ['projectId', 'jobId', 'region'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dataproc.projects.regions.jobs.get
*
* @desc Gets the resource representation for a job in a project.
*
* @example
* // PRE-REQUISITES:
* // ---------------
* // 1. If not already done, enable the Google Cloud Dataproc API and check the quota for your project at
* // https://console.developers.google.com/apis/api/dataproc_component/quotas
* // 2. This sample uses Application Default Credentials for Auth. If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk/ and run 'gcloud beta auth application-default login'
* // 3. To install the client library and Application Default Credentials library, run:
* // 'npm install googleapis --save'
* var google = require('googleapis');
* var dataproc = google.dataproc('v1alpha1');
*
* google.auth.getApplicationDefault(function(err, authClient) {
* if (err) {
* console.log('Authentication failed because of ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
*
* var request = {
* // TODO: Change placeholders below to appropriate parameter values for the 'get' method:
*
* // [Required] The ID of the Google Cloud Platform project that the job belongs to.
* projectId: "",
* // [Required] The Dataproc region in which to handle the request.
* region: "",
* // [Required] The job ID.
* jobId: "",
* // Auth client
* auth: authClient
* };
*
* dataproc.projects.regions.jobs.get(request, function(err, result) {
* if (err) {
* console.log(err);
* } else {
* console.log(result);
* }
* });
* });
*
* @alias dataproc.projects.regions.jobs.get
* @memberOf! dataproc(v1alpha1)
*
* @param {object} params Parameters for request
* @param {string} params.region Required The Dataproc region in which to handle the request.
* @param {string} params.projectId Required The ID of the Google Cloud Platform project that the job belongs to.
* @param {string} params.jobId Required The job ID.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataproc.googleapis.com/v1alpha1/projects/{projectId}/regions/{region}/jobs/{jobId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['projectId', 'region', 'jobId'],
pathParams: ['region', 'projectId', 'jobId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
clusters: {
/**
* dataproc.projects.regions.clusters.delete
*
* @desc Request to delete a cluster in a project.
*
* @example
* // PRE-REQUISITES:
* // ---------------
* // 1. If not already done, enable the Google Cloud Dataproc API and check the quota for your project at
* // https://console.developers.google.com/apis/api/dataproc_component/quotas
* // 2. This sample uses Application Default Credentials for Auth. If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk/ and run 'gcloud beta auth application-default login'
* // 3. To install the client library and Application Default Credentials library, run:
* // 'npm install googleapis --save'
* var google = require('googleapis');
* var dataproc = google.dataproc('v1alpha1');
*
* google.auth.getApplicationDefault(function(err, authClient) {
* if (err) {
* console.log('Authentication failed because of ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
*
* var request = {
* // TODO: Change placeholders below to appropriate parameter values for the 'delete' method:
*
* // [Required] The ID of the Google Cloud Platform project that the cluster belongs to.
* projectId: "",
* // [Required] The Dataproc region in which to handle the request.
* region: "",
* // [Required] The cluster name.
* clusterName: "",
* // Auth client
* auth: authClient
* };
*
* dataproc.projects.regions.clusters.delete(request, function(err, result) {
* if (err) {
* console.log(err);
* } else {
* console.log(result);
* }
* });
* });
*
* @alias dataproc.projects.regions.clusters.delete
* @memberOf! dataproc(v1alpha1)
*
* @param {object} params Parameters for request
* @param {string} params.projectId Required The ID of the Google Cloud Platform project that the cluster belongs to.
* @param {string} params.region Required The Dataproc region in which to handle the request.
* @param {string} params.clusterName Required The cluster name.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataproc.googleapis.com/v1alpha1/projects/{projectId}/regions/{region}/clusters/{clusterName}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['projectId', 'region', 'clusterName'],
pathParams: ['projectId', 'region', 'clusterName'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dataproc.projects.regions.clusters.patch
*
* @desc Request to update a cluster in a project.
*
* @example
* // PRE-REQUISITES:
* // ---------------
* // 1. If not already done, enable the Google Cloud Dataproc API and check the quota for your project at
* // https://console.developers.google.com/apis/api/dataproc_component/quotas
* // 2. This sample uses Application Default Credentials for Auth. If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk/ and run 'gcloud beta auth application-default login'
* // 3. To install the client library and Application Default Credentials library, run:
* // 'npm install googleapis --save'
* var google = require('googleapis');
* var dataproc = google.dataproc('v1alpha1');
*
* google.auth.getApplicationDefault(function(err, authClient) {
* if (err) {
* console.log('Authentication failed because of ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
*
* var request = {
* // TODO: Change placeholders below to appropriate parameter values for the 'patch' method:
*
* // [Required] The ID of the Google Cloud Platform project the cluster belongs to.
* projectId: "",
* // [Required] The Dataproc region in which to handle the request.
* region: "",
* // [Required] The cluster name.
* clusterName: "",
* resource: {},
* // Auth client
* auth: authClient
* };
*
* dataproc.projects.regions.clusters.patch(request, function(err, result) {
* if (err) {
* console.log(err);
* } else {
* console.log(result);
* }
* });
* });
*
* @alias dataproc.projects.regions.clusters.patch
* @memberOf! dataproc(v1alpha1)
*
* @param {object} params Parameters for request
* @param {string} params.region Required The Dataproc region in which to handle the request.
* @param {string=} params.updateMask Required Specifies the path, relative to <code>Cluster</code>, of the field to update. For example, to change the number of workers in a cluster to 5, the <code>update_mask</code> parameter would be specified as <code>"configuration.worker_configuration.num_instances,"</code> and the PATCH request body would specify the new value, as follows: { "configuration":{ "workerConfiguration":{ "numInstances":"5" } } } <strong>Note:</strong> Currently, <code>configuration.worker_configuration.num_instances</code> is the only field that can be updated.
* @param {string} params.clusterName Required The cluster name.
* @param {string} params.projectId Required The ID of the Google Cloud Platform project the cluster belongs to.
* @param {dataproc(v1alpha1).Cluster} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataproc.googleapis.com/v1alpha1/projects/{projectId}/regions/{region}/clusters/{clusterName}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['projectId', 'region', 'clusterName'],
pathParams: ['region', 'clusterName', 'projectId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dataproc.projects.regions.clusters.get
*
* @desc Request to get the resource representation for a cluster in a project.
*
* @example
* // PRE-REQUISITES:
* // ---------------
* // 1. If not already done, enable the Google Cloud Dataproc API and check the quota for your project at
* // https://console.developers.google.com/apis/api/dataproc_component/quotas
* // 2. This sample uses Application Default Credentials for Auth. If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk/ and run 'gcloud beta auth application-default login'
* // 3. To install the client library and Application Default Credentials library, run:
* // 'npm install googleapis --save'
* var google = require('googleapis');
* var dataproc = google.dataproc('v1alpha1');
*
* google.auth.getApplicationDefault(function(err, authClient) {
* if (err) {
* console.log('Authentication failed because of ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
*
* var request = {
* // TODO: Change placeholders below to appropriate parameter values for the 'get' method:
*
* // [Required] The ID of the Google Cloud Platform project that the cluster belongs to.
* projectId: "",
* // [Required] The Dataproc region in which to handle the request.
* region: "",
* // [Required] The cluster name.
* clusterName: "",
* // Auth client
* auth: authClient
* };
*
* dataproc.projects.regions.clusters.get(request, function(err, result) {
* if (err) {
* console.log(err);
* } else {
* console.log(result);
* }
* });
* });
*
* @alias dataproc.projects.regions.clusters.get
* @memberOf! dataproc(v1alpha1)
*
* @param {object} params Parameters for request
* @param {string} params.projectId Required The ID of the Google Cloud Platform project that the cluster belongs to.
* @param {string} params.region Required The Dataproc region in which to handle the request.
* @param {string} params.clusterName Required The cluster name.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataproc.googleapis.com/v1alpha1/projects/{projectId}/regions/{region}/clusters/{clusterName}',
method: 'GET'
}, options),
params: params,
requiredParams: ['projectId', 'region', 'clusterName'],
pathParams: ['projectId', 'region', 'clusterName'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dataproc.projects.regions.clusters.list
*
* @desc Request a list of all regions/{region}/clusters in a project.
*
* @example
* // PRE-REQUISITES:
* // ---------------
* // 1. If not already done, enable the Google Cloud Dataproc API and check the quota for your project at
* // https://console.developers.google.com/apis/api/dataproc_component/quotas
* // 2. This sample uses Application Default Credentials for Auth. If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk/ and run 'gcloud beta auth application-default login'
* // 3. To install the client library and Application Default Credentials library, run:
* // 'npm install googleapis --save'
* var google = require('googleapis');
* var dataproc = google.dataproc('v1alpha1');
*
* google.auth.getApplicationDefault(function(err, authClient) {
* if (err) {
* console.log('Authentication failed because of ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
*
* var request = {
* // TODO: Change placeholders below to appropriate parameter values for the 'list' method:
*
* // [Required] The ID of the Google Cloud Platform project that the cluster belongs to.
* projectId: "",
* // [Required] The Dataproc region in which to handle the request.
* region: "",
* // Auth client
* auth: authClient
* };
*
*
* var recur = function(err, result) {
* if (err) {
* console.log(err);
* } else {
* console.log(result);
* if (result.nextPageToken) {
* request.pageToken = result.nextPageToken;
* dataproc.projects.regions.clusters.list(request, recur);
* }
* }
* };
*
* dataproc.projects.regions.clusters.list(request, recur);
* });
*
* @alias dataproc.projects.regions.clusters.list
* @memberOf! dataproc(v1alpha1)
*
* @param {object} params Parameters for request
* @param {string=} params.pageToken The standard List page token.
* @param {integer=} params.pageSize The standard List page size.
* @param {string} params.projectId Required The ID of the Google Cloud Platform project that the cluster belongs to.
* @param {string} params.region Required The Dataproc region in which to handle the request.
* @param {string=} params.filter Optional A filter constraining which clusters to list. Valid filters contain label terms such as: labels.key1 = val1 AND (-labels.k2 = val2 OR labels.k3 = val3)
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataproc.googleapis.com/v1alpha1/projects/{projectId}/regions/{region}/clusters',
method: 'GET'
}, options),
params: params,
requiredParams: ['projectId', 'region'],
pathParams: ['projectId', 'region'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dataproc.projects.regions.clusters.create
*
* @desc Request to create a cluster in a project.
*
* @example
* // PRE-REQUISITES:
* // ---------------
* // 1. If not already done, enable the Google Cloud Dataproc API and check the quota for your project at
* // https://console.developers.google.com/apis/api/dataproc_component/quotas
* // 2. This sample uses Application Default Credentials for Auth. If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk/ and run 'gcloud beta auth application-default login'
* // 3. To install the client library and Application Default Credentials library, run:
* // 'npm install googleapis --save'
* var google = require('googleapis');
* var dataproc = google.dataproc('v1alpha1');
*
* google.auth.getApplicationDefault(function(err, authClient) {
* if (err) {
* console.log('Authentication failed because of ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
*
* var request = {
* // TODO: Change placeholders below to appropriate parameter values for the 'create' method:
*
* // [Required] The ID of the Google Cloud Platform project that the cluster belongs to.
* projectId: "",
* // [Required] The Dataproc region in which to handle the request.
* region: "",
* resource: {},
* // Auth client
* auth: authClient
* };
*
* dataproc.projects.regions.clusters.create(request, function(err, result) {
* if (err) {
* console.log(err);
* } else {
* console.log(result);
* }
* });
* });
*
* @alias dataproc.projects.regions.clusters.create
* @memberOf! dataproc(v1alpha1)
*
* @param {object} params Parameters for request
* @param {string} params.region Required The Dataproc region in which to handle the request.
* @param {string} params.projectId Required The ID of the Google Cloud Platform project that the cluster belongs to.
* @param {dataproc(v1alpha1).Cluster} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
create: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://dataproc.googleapis.com/v1alpha1/projects/{projectId}/regions/{region}/clusters',
method: 'POST'
}, options),
params: params,
requiredParams: ['projectId', 'region'],
pathParams: ['region', 'projectId'],
context: self
};
return createAPIRequest(parameters, callback);
}
}
}
};
}
/**
* @typedef JobReference
* @memberOf! dataproc(v1alpha1)
* @type object
* @property {string} projectId Required The ID of the Google Cloud Platform project that the job belongs to.
* @property {string} jobId Required The job ID, which must be unique within the project. The job ID is generated by the server upon job submission or provided by the user as a means to perform retries without creating duplicate jobs. The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), or dashes (-). The maximum length is 100 characters.
*/
/**
* @typedef SubmitJobRequest
* @memberOf! dataproc(v1alpha1)
* @type object
* @property {dataproc(v1alpha1).Job} job Required The job resource.
*/
/**
* @typedef Status
* @memberOf! dataproc(v1alpha1)
* @type object
* @property {integer} code The status code, which should be an enum value of google.rpc.Code.
* @property {string} message A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
* @property {object[]} details A list of messages that carry the error details. There will be a common set of message types for APIs to use.
*/
/**
* @typedef JobScheduling
* @memberOf! dataproc(v1alpha1)
* @type object
* @property {integer} maxFailuresPerHour Optional Maximum number of times per hour a driver may be restarted as a result of driver terminating with non-zero code before job is reported failed.A job may be reported as thrashing if driver exits with non-zero code 4 times within 10 minute window.Maximum value is 10.
*/
/**
* @typedef NodeInitializationAction
* @memberOf! dataproc(v1alpha1)
* @type object
* @property {string} executionTimeout Optional Amount of time executable has to complete. Default is 10 minutes. Cluster creation fails with an explanatory error message (the name of the executable that caused the error and the exceeded timeout period) if the executable is not completed at end of the timeout period.
* @property {string} executableFile Required Google Cloud Storage URI of executable file.
*/
/**
* @typedef ListJobsResponse
* @memberOf! dataproc(v1alpha1)
* @type object
* @property {dataproc(v1alpha1).Job[]} jobs Output-only Jobs list.
* @property {string} nextPageToken Optional This token is included in the response if there are more results to fetch. To fetch additional results, provide this value as the page_token in a subsequent <code>ListJobsRequest</code>.
*/
/**
* @typedef CancelJobRequest
* @memberOf! dataproc(v1alpha1)
* @type object
*/
/**
* @typedef SparkSqlJob
* @memberOf! dataproc(v1alpha1)
* @type object
* @property {dataproc(v1alpha1).LoggingConfiguration} loggingConfiguration Optional The runtime log configuration for job execution.
* @property {object} properties Optional A mapping of property names to values, used to configure Spark SQL's SparkConf. Properties that conflict with values set by the Cloud Dataproc API may be overwritten.
* @property {string} queryFileUri The HCFS URI of the script that contains SQL queries.
* @property {dataproc(v1alpha1).QueryList} queryList A list of queries.
* @property {string[]} jarFileUris Optional HCFS URIs of jar files to be added to the Spark CLASSPATH.
* @property {object} scriptVariables Optional Mapping of query variable names to values (equivalent to the Spark SQL command: SET name="value";).
*/
/**
* @typedef Cluster
* @memberOf! dataproc(v1alpha1)
* @type object
* @property {string} createTime Output-only The timestamp of cluster creation.
* @property {object} labels Optional The labels to associate with this cluster.Label keys must be between 1 and 63 characters long, and must conform to the following PCRE regular expression: \p{Ll}\p{Lo}{0,62}Label values must be between 1 and 63 characters long, and must conform to the following PCRE regular expression: \p{Ll}\p{Lo}\p{N}_-{0,63}No more than 64 labels can be associated with a given cluster.
* @property {dataproc(v1alpha1).ClusterStatus} status Output-only Cluster status.
* @property {dataproc(v1alpha1).ClusterMetrics} metrics Contains cluster daemon metrics such as HDFS and YARN stats.
* @property {dataproc(v1alpha1).ClusterStatus[]} statusHistory Output-only Previous cluster statuses.
* @property {string} clusterName Required The cluster name. Cluster names within a project must be unique. Names from deleted clusters can be reused.
* @property {string} clusterUuid Output-only A cluster UUID (Unique Universal Identifier). Cloud Dataproc generates this value when it creates the cluster.
* @property {string} projectId Required The Google Cloud Platform project ID that the cluster belongs to.
* @property {dataproc(v1alpha1).ClusterConfiguration} configuration Required The cluster configuration. It may differ from a user's initial configuration due to Cloud Dataproc setting of default values and updating clusters.
*/
/**
* @typedef ListOperationsResponse
* @memberOf! dataproc(v1alpha1)
* @type object
* @property {dataproc(v1alpha1).Operation[]} operations A list of operations that match the specified filter in the request.
* @property {string} nextPageToken The standard List next-page token.
*/
/**
* @typedef OperationMetadata
* @memberOf! dataproc(v1alpha1)
* @type object
* @property {dataproc(v1alpha1).OperationStatus} status Output-only Current operation status.
* @property {string} state A message containing the operation state.
* @property {string} details A message containing any operation metadata details.
* @property {string} clusterUuid Cluster UUId for the operation.
* @property {string} clusterName Name of the cluster for the operation.
* @property {string} innerState A message containing the detailed operation state.
* @property {string} endTime The time that the operation completed.
* @property {string} startTime The time that the operation was started by the server.
* @property {string[]} warnings Output-only Errors encountered during operation execution.
* @property {string} insertTime The time that the operation was requested.
* @property {dataproc(v1alpha1).OperationStatus[]} statusHistory Output-only Previous operation status.
* @property {string} operationType Output-only The operation type.
* @property {string} description Output-only Short description of operation.
*/
/**
* @typedef JobPlacement
* @memberOf! dataproc(v1alpha1)
* @type object
* @property {string} clusterName Required The name of the cluster where the job will be submitted.
* @property {string} clusterUuid Output-only A cluster UUID generated by the Dataproc service when the job is submitted.
*/
/**
* @typedef ClusterStatus
* @memberOf! dataproc(v1alpha1)
* @type object
* @property {string} detail Optional details of cluster's state.
* @property {string} state The cluster's state.
* @property {string} stateStartTime Time when this state was entered.
* @property {string} substate Output-only Additional state information that includes status reported by the agent.
*/
/**
* @typedef PigJob
* @memberOf! dataproc(v1alpha1)
* @type object
* @property {string[]} jarFileUris Optional HCFS URIs of jar files to add to the CLASSPATH of the Pig Client and Hadoop MapReduce (MR) tasks. Can contain Pig UDFs.
* @property {object} scriptVariables Optional Mapping of query variable names to values (equivalent to the Pig command: "name=value").
* @property {dataproc(v1alpha1).LoggingConfiguration} loggingConfiguration Optional The runtime log configuration for job execution.
* @property {object} properties Optional A mapping of property names to values, used to configure Pig. Properties that conflict with values set by the Cloud Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, /etc/pig/conf/pig.properties, and classes in user code.
* @property {boolean} continueOnFailure Optional Whether to continue executing queries if a query fails. The default value is false. Setting to true can be useful when executing independent parallel queries.
* @property {dataproc(v1alpha1).QueryList} queryList A list of queries.
* @property {string} queryFileUri The HCFS URI of the script that contains the Pig queries.
*/
/**
* @typedef AcceleratorConfiguration
* @memberOf! dataproc(v1alpha1)
* @type object
* @property {integer} acceleratorCount The number of the accelerator cards of this type exposed to this instance.
* @property {string} acceleratorTypeUri Full or partial URI of the accelerator type resource to expose to this instance. See Google Compute Engine AcceleratorTypes( /compute/docs/reference/beta/acceleratorTypes)
*/
/**
* @typedef ListClustersResponse
* @memberOf! dataproc(v1alpha1)
* @type object
* @property {dataproc(v1alpha1).Cluster[]} clusters Output-only The clusters in the project.
* @property {string} nextPageToken The standard List next-page token.
*/
/**
* @typedef ManagedGroupConfiguration
* @memberOf! dataproc(v1alpha1)
* @type object
* @property {string} instanceGroupManagerName Output-only The name of Instance Group Manager managing this group.
* @property {string} instanceTemplateName Output-only The name of Instance Template used for Managed Instance Group.
*/
/**
* @typedef Job
* @memberOf! dataproc(v1alpha1)
* @type object
* @property {dataproc(v1alpha1).JobStatus} status Output-only The job status. Additional application-specific status information may be contained in the <code>type_job</code> and <code>yarn_applications</code> fields.
* @property {dataproc(v1alpha1).JobPlacement} placement Required Job information, including how, when, and where to run the job.
* @property {string} driverControlFilesUri Output-only If present, the location of miscellaneous control files which may be used as part of job setup and handling. If not present, control files may be placed in the same location as driver_output_uri.
* @property {string} submittedBy Output-only The email address of the user submitting the job. For jobs submitted on the cluster, the address is <code>username@hostname</code>.
* @property {dataproc(v1alpha1).JobScheduling} scheduling Optional Job scheduling configuration.
* @property {dataproc(v1alpha1).PigJob} pigJob Job is a Pig job.
* @property {string} driverOutputUri Output-only A URI pointing to the location of the mixed stdout/stderr of the job's driver program&mdash;for example, <code>gs://sysbucket123/foo-cluster/jobid-123/driver/output</code>.
* @property {dataproc(v1alpha1).HiveJob} hiveJob Job is a Hive job.
* @property {object} labels Optional The labels to associate with this job.Label keys must be between 1 and 63 characters long, and must conform to the following regular expression: \p{Ll}\p{Lo}{0,62}Label values must be between 1 and 63 characters long, and must conform to the following regular expression: \p{Ll}\p{Lo}\p{N}_-{0,63}No more than 64 labels can be associated with a given job.
* @property {string} driverOutputResourceUri Output-only A URI pointing to the location of the stdout of the job's driver program.
* @property {dataproc(v1alpha1).SparkJob} sparkJob Job is a Spark job.
* @property {dataproc(v1alpha1).SparkSqlJob} sparkSqlJob Job is a SparkSql job.
* @property {dataproc(v1alpha1).JobStatus[]} statusHistory Output-only The previous job status.
* @property {dataproc(v1alpha1).YarnApplication[]} yarnApplications Output-only The collection of Yarn applications spun up by this job.
* @property {dataproc(v1alpha1).PySparkJob} pysparkJob Job is a Pyspark job.
* @property {dataproc(v1alpha1).JobReference} reference Optional The fully-qualified reference to the job, which can be used to obtain the equivalent REST path of the job resource. If this property is not specified when a job is created, the server generates a <code>job_id</code>.
* @property {boolean} interactive Optional If set to true, then the driver's stdin will be kept open and driver_input_uri will be set to provide a path at which additional input can be sent to the driver.
* @property {string} driverInputResourceUri Output-only A URI pointing to the location of the stdin of the job's driver program, only set if the job is interactive.
* @property {dataproc(v1alpha1).HadoopJob} hadoopJob Job is a Hadoop job.
*/
/**
* @typedef SparkJob
* @memberOf! dataproc(v1alpha1)
* @type object
* @property {string} mainClass The name of the driver's main class. The jar file that contains the class must be in the default CLASSPATH or specified in jar_file_uris.
* @property {string[]} archiveUris Optional HCFS URIs of archives to be extracted in the working directory of Spark drivers and tasks. Supported file types: .jar, .tar, .tar.gz, .tgz, and .zip.
* @property {string} mainJarFileUri The Hadoop Compatible Filesystem (HCFS) URI of the jar file that contains the main class.
* @property {string[]} jarFileUris Optional HCFS URIs of jar files to add to the CLASSPATHs of the Spark driver and tasks.
* @property {dataproc(v1alpha1).LoggingConfiguration} loggingConfiguration Optional The runtime log configuration for job execution.
* @property {object} properties Optional A mapping of property names to values, used to configure Spark. Properties that conflict with values set by the Cloud Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.
* @property {string[]} args Optional The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.
* @property {string[]} fileUris Optional HCFS URIs of files to be copied to the working directory of Spark drivers and distributed tasks. Useful for naively parallel tasks.
*/
/**
* @typedef JobStatus
* @memberOf! dataproc(v1alpha1)
* @type object
* @property {string} substate Output-only Additional state information, which includes status reported by the agent.
* @property {string} insertTime The time of the job request.
* @property {string} details Optional Job state details, such as an error description if the state is <code>ERROR</code>.
* @property {string} state Required A state message specifying the overall job state.
* @property {string} stateStartTime Output-only The time when this state was entered.
* @property {string} endTime The time when the job completed.
* @property {string} startTime The time when the server started the job.
*/
/**
* @typedef DiskConfiguration
* @memberOf! dataproc(v1alpha1)
* @type object
* @property {integer} bootDiskSizeGb Optional Size in GB of the boot disk (default is 500GB).
* @property {integer} numLocalSsds Optional Number of attached SSDs, from 0 to 4 (default is 0). If SSDs are not attached, the boot disk is used to store runtime logs, and HDFS data. If one or more SSDs are attached, this runtime bulk data is spread across them, and the boot disk contains only basic configuration and installed binaries.
*/
/**
* @typedef ClusterOperationStatus
* @memberOf! dataproc(v1alpha1)
* @type object
* @property {string} stateStartTime Output-only The time this state was entered.
* @property {string} state Output-only A message containing the operation state.
* @property {string} details Output-onlyA message containing any operation metadata details.
* @property {string} innerState Output-only A message containing the detailed operation state.
*/
/**
* @typedef YarnApplication
* @memberOf! dataproc(v1alpha1)
* @type object
* @property {string} state Required The application state.
* @property {string} name Required The application name.
* @property {string} trackingUrl Optional The HTTP URL of the ApplicationMaster, HistoryServer, or TimelineServer that provides application-specific information. The URL uses the internal hostname, and requires a proxy server for resolution and, possibly, access.
* @property {number} progress Required The numerical progress of the application, from 1 to 100.
*/
/**
* @typedef QueryList
* @memberOf! dataproc(v1alpha1)
* @type object
* @property {string[]} queries Required The queries to execute. You do not need to terminate a query with a semicolon. Multiple queries can be specified in one string by separating each with a semicolon. Here is an example of an Cloud Dataproc API snippet that uses a QueryList to specify a HiveJob:
"hiveJob": {
"queryList": {
"queries": [
"query1",
"query2",
"query3;query4",
]
}
}
*/
/**
* @typedef HadoopJob
* @memberOf! dataproc(v1alpha1)
* @type object
* @property {string[]} jarFileUris Optional Jar file URIs to add to the CLASSPATHs of the Hadoop driver and tasks.
* @property {dataproc(v1alpha1).LoggingConfiguration} loggingConfiguration Optional The runtime log configuration for job execution.
* @property {object} properties Optional A mapping of property names to values, used to configure Hadoop. Properties that conflict with values set by the Cloud Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site and classes in user code.
* @property {string[]} args Optional The arguments to pass to the driver. Do not include arguments, such as -libjars or -Dfoo=bar, that can be set as job properties, since a collision may occur that causes an incorrect job submission.
* @property {string[]} fileUris Optional HCFS URIs of files to be copied to the working directory of Hadoop drivers and distributed tasks. Useful for naively parallel tasks.
* @property {string} mainClass The name of the driver's main class. The jar file containing the class must be in the default CLASSPATH or specified in jar_file_uris.
* @property {string[]} archiveUris Optional HCFS URIs of archives to be extracted in the working directory of Hadoop drivers and tasks. Supported file types: .jar, .tar, .tar.gz, .tgz, or .zip.
* @property {string} mainJarFileUri The Hadoop Compatible Filesystem (HCFS) URI of the jar file containing the main class. Examples: gs://foo-bucket/analytics-binaries/extract-useful-metrics-mr.jar hdfs:/tmp/test-samples/custom-wordcount.jar file:///home/usr/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar
*/
/**
* @typedef ClusterOperationMetadata
* @memberOf! dataproc(v1alpha1)
* @type object
* @property {string} operationType Output-only The operation type.
* @property {string} description Output-only Short description of operation.
* @property {string[]} warnings Output-only Errors encountered during operation execution.
* @property {object} labels Output-only Labels associated with the operation
* @property {dataproc(v1alpha1).ClusterOperationStatus} status Output-only Current operation status.
* @property {dataproc(v1alpha1).ClusterOperationStatus[]} statusHistory Output-only The previous operation status.
* @property {string} clusterName Output-only Name of the cluster for the operation.
* @property {string} clusterUuid Output-only Cluster UUID for the operation.
*/
/**
* @typedef Empty
* @memberOf! dataproc(v1alpha1)
* @type object
*/
/**
* @typedef HiveJob
* @memberOf! dataproc(v1alpha1)
* @type object
* @property {boolean} continueOnFailure Optional Whether to continue executing queries if a query fails. The default value is false. Setting to true can be useful when executing independent parallel queries.
* @property {dataproc(v1alpha1).QueryList} queryList A list of queries.
* @property {string} queryFileUri The HCFS URI of the script that contains Hive queries.
* @property {object} scriptVariables Optional Mapping of query variable names to values (equivalent to the Hive command: 'SET name="value";').
* @property {string[]} jarFileUris Optional HCFS URIs of jar files to add to the CLASSPATH of the Hive server and Hadoop MapReduce (MR) tasks. Can contain Hive SerDes and UDFs.
* @property {object} properties Optional A mapping of property names and values, used to configure Hive. Properties that conflict with values set by the Cloud Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, /etc/hive/conf/hive-site.xml, and classes in user code.
*/
/**
* @typedef ListJobsRequest
* @memberOf! dataproc(v1alpha1)
* @type object
* @property {string} filter Optional A filter constraining which jobs to list. Valid filters contain job state and label terms such as: labels.key1 = val1 AND (labels.k2 = val2 OR labels.k3 = val3)
* @property {string} jobStateMatcher Optional Specifies enumerated categories of jobs to list.
* @property {string} pageToken Optional The page token, returned by a previous call, to request the next page of results.
* @property {string} clusterName Optional If set, the returned jobs list includes only jobs that were submitted to the named cluster.
* @property {integer} pageSize Optional The number of results to return in each response.
*/
/**
* @typedef DiagnoseClusterResults
* @memberOf! dataproc(v1alpha1)
* @type object
* @property {string} outputUri Output-only The Google Cloud Storage URI of the diagnostic output. The output report is a plain text file with a summary of collected diagnostics.
*/
/**
* @typedef GceConfiguration
* @memberOf! dataproc(v1alpha1)
* @type object
* @property {string} imageUri Deprecated The Google Compute Engine image resource used for cluster instances. Example: "compute.googleapis.com/projects/debian-cloud /global/images/backports-debian-7-wheezy-v20140904".
* @property {string} machineTypeUri Deprecated The Google Compute Engine machine type used for cluster instances. Example: "compute.googleapis.com/projects/project_id /zones/us-east1-a/machineTypes/n1-standard-2".
* @property {string} networkUri Deprecated The Google Compute Engine network to be used for machine communications. Inbound SSH connections are necessary to complete cluster configuration. Example "compute.googleapis.com/projects/project_id /zones/us-east1-a/default".
* @property {string[]} serviceAccountScopes Deprecated The service account scopes included in Google Compute Engine instances. Must include devstorage.full_control to enable the Google Cloud Storage connector. Example "auth.googleapis.com/compute" and "auth.googleapis.com/devstorage.full_control".
* @property {string} zoneUri Deprecated The zone where the Google Compute Engine cluster will be located. Example: "compute.googleapis.com/projects/project_id /zones/us-east1-a".
*/
/**
* @typedef SoftwareConfiguration
* @memberOf! dataproc(v1alpha1)
* @type object
* @property {object} properties Optional The properties to set on daemon configuration files.Property keys are specified in "prefix:property" format, such as "core:fs.defaultFS". The following are supported prefixes and their mappings: core - core-site.xml hdfs - hdfs-site.xml mapred - mapred-site.xml yarn - yarn-site.xml hive - hive-site.xml pig - pig.properties spark - spark-defaults.conf
* @property {string} imageVersion Optional The version of software inside the cluster. It must match the regular expression 0-9+.0-9+. If unspecified it will default to latest version.
*/
/**
* @typedef PySparkJob
* @memberOf! dataproc(v1alpha1)
* @type object
* @property {string[]} jarFileUris Optional HCFS URIs of jar files to add to the CLASSPATHs of the Python driver and tasks.
* @property {dataproc(v1alpha1).LoggingConfiguration} loggingConfiguration Optional The runtime log configuration for job execution.
* @property {object} properties Optional A mapping of property names to values, used to configure PySpark. Properties that conflict with values set by the Cloud Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.
* @property {string[]} args Optional The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.
* @property {string[]} fileUris Optional HCFS URIs of files to be copied to the working directory of Python drivers and distributed tasks. Useful for naively parallel tasks.
* @property {string[]} pythonFileUris Optional HCFS file URIs of Python files to pass to the PySpark framework. Supported file types: .py, .egg, and .zip.
* @property {string} mainPythonFileUri Required The Hadoop Compatible Filesystem (HCFS) URI of the main Python file to use as the driver. Must be a .py file.
* @property {string[]} archiveUris Optional HCFS URIs of archives to be extracted in the working directory of .jar, .tar, .tar.gz, .tgz, and .zip.
*/
/**
* @typedef LoggingConfiguration
* @memberOf! dataproc(v1alpha1)
* @type object
* @property {object} driverLogLevels The per-package log levels for the driver. This may include 'root' package name to configure rootLogger. Examples: com.google = FATAL, root = INFO, org.apache = DEBUG
*/
/**
* @typedef ClusterConfiguration
* @memberOf! dataproc(v1alpha1)
* @type object
* @property {dataproc(v1alpha1).InstanceGroupConfiguration} masterConfiguration Optional The Google Compute Engine configuration settings for the master instance in a cluster.
* @property {dataproc(v1alpha1).InstanceGroupConfiguration} secondaryWorkerConfiguration Optional The Google Compute Engine configuration settings for additional worker instances in a cluster.
* @property {string} masterName Deprecated The Master's hostname. Dataproc derives the name from cluster_name if not set by user (recommended practice is to let Dataproc derive the name). Derived master name example: hadoop-m.
* @property {string[]} workers Deprecated The list of worker node names. Dataproc derives the names from cluster_name and num_workers if not set by user (recommended practice is to let Dataproc derive the name). Derived worker node name example: hadoop-w-0.
* @property {dataproc(v1alpha1).NodeInitializationAction[]} initializationActions Optional Commands to execute on each node after configuration is completed. By default, executables are run on master and all worker nodes. You can test a node's <code>role</code> metadata to run an executable on a master or worker node, as shown below:
ROLE=$(/usr/share/google/get_metadata_value attributes/role)
if [[ "${ROLE}" == 'Master' ]]; then
... master specific actions ...
else
... worker specific actions ...
fi
* @property {dataproc(v1alpha1).InstanceGroupConfiguration} workerConfiguration Optional The Google Compute Engine configuration settings for worker instances in a cluster.
* @property {dataproc(v1alpha1).SoftwareConfiguration} softwareConfiguration Optional The configuration settings for software inside the cluster.
* @property {dataproc(v1alpha1).GceClusterConfiguration} gceClusterConfiguration Optional The shared Google Compute Engine configuration settings for all instances in a cluster.
* @property {string} configurationBucket Optional A Google Cloud Storage staging bucket used for sharing generated SSH keys and configuration. If you do not specify a staging bucket, Cloud Dataproc will determine an appropriate Cloud Storage location (US, ASIA, or EU) for your cluster's staging bucket according to the Google Compute Engine zone where your cluster is deployed, then it will create and manage this project-level, per-location bucket for you.
* @property {integer} numWorkers Deprecated The number of worker nodes in the cluster.
* @property {dataproc(v1alpha1).DiskConfiguration} masterDiskConfiguration Deprecated The configuration settings of master node disk options.
* @property {dataproc(v1alpha1).DiskConfiguration} workerDiskConfiguration Deprecated The configuration settings of worker node disk options.
* @property {dataproc(v1alpha1).GceConfiguration} gceConfiguration Deprecated The Google Compute Engine configuration settings for cluster resources.
*/
/**
* @typedef ClusterMetrics
* @memberOf! dataproc(v1alpha1)
* @type object
* @property {object} yarnMetrics The YARN metrics.
* @property {object} hdfsMetrics The HDFS metrics.
*/
/**
* @typedef InstanceGroupConfiguration
* @memberOf! dataproc(v1alpha1)
* @type object
* @property {dataproc(v1alpha1).AcceleratorConfiguration[]} accelerators Optional The Google Compute Engine accelerator configuration for these instances.
* @property {integer} numInstances The number of VM instances in the instance group. For master instance groups, must be set to 1.
* @property {dataproc(v1alpha1).DiskConfiguration} diskConfiguration Disk option configuration settings.
* @property {string} imageUri Output-only The Google Compute Engine image resource used for cluster instances. Inferred from SoftwareConfiguration.image_version. Example: "compute.googleapis.com/projects/debian-cloud /global/images/backports-debian-7-wheezy-v20140904".
* @property {string} machineTypeUri The Google Compute Engine machine type used for cluster instances. Example: "compute.googleapis.com/projects/project_id /zones/us-east1-a/machineTypes/n1-standard-2".
* @property {boolean} isPreemptible Specifies that this instance group contains Preemptible Instances.
* @property {string[]} instanceNames The list of instance names. Dataproc derives the names from cluster_name, num_instances, and the instance group if not set by user (recommended practice is to let Dataproc derive the name).
* @property {dataproc(v1alpha1).ManagedGroupConfiguration} managedGroupConfiguration Output-only The configuration for Google Compute Engine Instance Group Manager that manages this group. This is only used for preemptible instance groups.
*/
/**
* @typedef GceClusterConfiguration
* @memberOf! dataproc(v1alpha1)
* @type object
* @property {string[]} tags The Google Compute Engine tags to add to all instances.
* @property {string} serviceAccount Optional The service account of the instances. Defaults to the default Google Compute Engine service account. Custom service accounts need permissions equivalent to the folloing IAM roles:
roles/logging.logWriter
roles/storage.objectAdmin(see https://cloud.google.com/compute/docs/access/service-accounts#custom_service_accounts for more information). Example: [account_id]@[project_id].iam.gserviceaccount.com
* @property {string} subnetworkUri The Google Compute Engine subnetwork to be used for machine communications. Cannot be specified with network_uri. Example: compute.googleapis.com/projects/[project_id]/regions/us-east1/sub0.
* @property {string} networkUri The Google Compute Engine network to be used for machine communications. Cannot be specified with subnetwork_uri. If neither network_uri nor subnetwork_uri is specified, the "default" network of the project is used, if it exists. Cannot be a "Custom Subnet Network" (see https://cloud.google.com/compute/docs/subnetworks for more information). Example: compute.googleapis.com/projects/[project_id]/regions/global/default.
* @property {string} zoneUri Required The zone where the Google Compute Engine cluster will be located. Example: "compute.googleapis.com/projects/project_id /zones/us-east1-a".
* @property {object} metadata The Google Compute Engine metadata entries to add to all instances.
* @property {boolean} internalIpOnly If true, all instances in the cluser will only have internal IP addresses. By default, clusters are not restricted to internal IP addresses, and will have ephemeral external IP addresses assigned to each instance. This restriction can only be enabled for subnetwork enabled networks, and all off-cluster dependencies must be configured to be accessible without external IP addresses.
* @property {string[]} serviceAccountScopes The service account scopes included in Google Compute Engine instances. Must include devstorage.full_control to enable the Google Cloud Storage connector. Example "auth.googleapis.com/compute" and "auth.googleapis.com/devstorage.full_control".
*/
/**
* @typedef CancelOperationRequest
* @memberOf! dataproc(v1alpha1)
* @type object
*/
/**
* @typedef DiagnoseClusterOutputLocation
* @memberOf! dataproc(v1alpha1)
* @type object
* @property {string} outputUri Output-only The Google Cloud Storage URI of the diagnostic output. This will be a plain text file with summary of collected diagnostics.
*/
/**
* @typedef Operation
* @memberOf! dataproc(v1alpha1)
* @type object
* @property {object} metadata Service-specific metadata associated with the operation.
* @property {boolean} done Indicates if the operation is done. If true, the operation is complete and the result is available. If false, the operation is still in progress.
* @property {object} response The operation response. If the called method returns no data on success, the response is google.protobuf.Empty. If the called method is Get,Create or Update, the response is the resource. For all other methods, the response type is a concatenation of the method name and "Response". For example, if the called method is TakeSnapshot(), the response type is TakeSnapshotResponse.
* @property {string} name The name of the operation resource, in the format projects/project_id/operations/operation_id
* @property {dataproc(v1alpha1).Status} error The error result of the operation in case of failure.
*/
/**
* @typedef OperationStatus
* @memberOf! dataproc(v1alpha1)
* @type object
* @property {string} innerState A message containing the detailed operation state.
* @property {string} stateStartTime The time this state was entered.
* @property {string} state A message containing the operation state.
* @property {string} details A message containing any operation metadata details.
*/
module.exports = Dataproc;
|
| File | Statements | Branches | Functions | Lines | |||||
|---|---|---|---|---|---|---|---|---|---|
| v1beta3.js | 9.3% | (4 / 43) | 0% | (0 / 26) | 0% | (0 / 7) | 9.3% | (4 / 43) |
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* Google Cloud Datastore API
*
* Accesses the schemaless NoSQL database to provide fully managed, robust, scalable storage for your application.
*
* @example
* var google = require('googleapis');
* var datastore = google.datastore('v1beta3');
*
* @namespace datastore
* @type {Function}
* @version v1beta3
* @variation v1beta3
* @param {object=} options Options for Datastore
*/
function Datastore(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.projects = {
/**
* datastore.projects.beginTransaction
*
* @desc Begins a new transaction.
*
* @alias datastore.projects.beginTransaction
* @memberOf! datastore(v1beta3)
*
* @param {object} params Parameters for request
* @param {string} params.projectId The ID of the project against which to make the request.
* @param {datastore(v1beta3).BeginTransactionRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
beginTransaction: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://datastore.googleapis.com/v1beta3/projects/{projectId}:beginTransaction',
method: 'POST'
}, options),
params: params,
requiredParams: ['projectId'],
pathParams: ['projectId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* datastore.projects.commit
*
* @desc Commits a transaction, optionally creating, deleting or modifying some entities.
*
* @alias datastore.projects.commit
* @memberOf! datastore(v1beta3)
*
* @param {object} params Parameters for request
* @param {string} params.projectId The ID of the project against which to make the request.
* @param {datastore(v1beta3).CommitRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
commit: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://datastore.googleapis.com/v1beta3/projects/{projectId}:commit',
method: 'POST'
}, options),
params: params,
requiredParams: ['projectId'],
pathParams: ['projectId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* datastore.projects.rollback
*
* @desc Rolls back a transaction.
*
* @alias datastore.projects.rollback
* @memberOf! datastore(v1beta3)
*
* @param {object} params Parameters for request
* @param {string} params.projectId The ID of the project against which to make the request.
* @param {datastore(v1beta3).RollbackRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
rollback: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://datastore.googleapis.com/v1beta3/projects/{projectId}:rollback',
method: 'POST'
}, options),
params: params,
requiredParams: ['projectId'],
pathParams: ['projectId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* datastore.projects.runQuery
*
* @desc Queries for entities.
*
* @alias datastore.projects.runQuery
* @memberOf! datastore(v1beta3)
*
* @param {object} params Parameters for request
* @param {string} params.projectId The ID of the project against which to make the request.
* @param {datastore(v1beta3).RunQueryRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
runQuery: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://datastore.googleapis.com/v1beta3/projects/{projectId}:runQuery',
method: 'POST'
}, options),
params: params,
requiredParams: ['projectId'],
pathParams: ['projectId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* datastore.projects.lookup
*
* @desc Looks up entities by key.
*
* @alias datastore.projects.lookup
* @memberOf! datastore(v1beta3)
*
* @param {object} params Parameters for request
* @param {string} params.projectId The ID of the project against which to make the request.
* @param {datastore(v1beta3).LookupRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
lookup: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://datastore.googleapis.com/v1beta3/projects/{projectId}:lookup',
method: 'POST'
}, options),
params: params,
requiredParams: ['projectId'],
pathParams: ['projectId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* datastore.projects.allocateIds
*
* @desc Allocates IDs for the given keys, which is useful for referencing an entity before it is inserted.
*
* @alias datastore.projects.allocateIds
* @memberOf! datastore(v1beta3)
*
* @param {object} params Parameters for request
* @param {string} params.projectId The ID of the project against which to make the request.
* @param {datastore(v1beta3).AllocateIdsRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
allocateIds: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://datastore.googleapis.com/v1beta3/projects/{projectId}:allocateIds',
method: 'POST'
}, options),
params: params,
requiredParams: ['projectId'],
pathParams: ['projectId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
}
/**
* @typedef AllocateIdsRequest
* @memberOf! datastore(v1beta3)
* @type object
* @property {datastore(v1beta3).Key[]} keys A list of keys with incomplete key paths for which to allocate IDs.
No key may be reserved/read-only.
*/
/**
* @typedef LookupResponse
* @memberOf! datastore(v1beta3)
* @type object
* @property {datastore(v1beta3).EntityResult[]} found Entities found as `ResultType.FULL` entities. The order of results in this
field is undefined and has no relation to the order of the keys in the
input.
* @property {datastore(v1beta3).EntityResult[]} missing Entities not found as `ResultType.KEY_ONLY` entities. The order of results
in this field is undefined and has no relation to the order of the keys
in the input.
* @property {datastore(v1beta3).Key[]} deferred A list of keys that were not looked up due to resource constraints. The
order of results in this field is undefined and has no relation to the
order of the keys in the input.
*/
/**
* @typedef RunQueryResponse
* @memberOf! datastore(v1beta3)
* @type object
* @property {datastore(v1beta3).QueryResultBatch} batch A batch of query results (always present).
* @property {datastore(v1beta3).Query} query The parsed form of the `GqlQuery` from the request, if it was set.
*/
/**
* @typedef PropertyOrder
* @memberOf! datastore(v1beta3)
* @type object
* @property {datastore(v1beta3).PropertyReference} property The property to order by.
* @property {string} direction The direction to order by. Defaults to `ASCENDING`.
*/
/**
* @typedef BeginTransactionRequest
* @memberOf! datastore(v1beta3)
* @type object
*/
/**
* @typedef CommitRequest
* @memberOf! datastore(v1beta3)
* @type object
* @property {string} mode The type of commit to perform. Defaults to `TRANSACTIONAL`.
* @property {datastore(v1beta3).Mutation[]} mutations The mutations to perform.
When mode is `TRANSACTIONAL`, mutations affecting a single entity are
applied in order. The following sequences of mutations affecting a single
entity are not permitted in a single `Commit` request:
- `insert` followed by `insert`
- `update` followed by `insert`
- `upsert` followed by `insert`
- `delete` followed by `update`
When mode is `NON_TRANSACTIONAL`, no two mutations may affect a single
entity.
* @property {string} transaction The identifier of the transaction associated with the commit. A
transaction identifier is returned by a call to
Datastore.BeginTransaction.
*/
/**
* @typedef KindExpression
* @memberOf! datastore(v1beta3)
* @type object
* @property {string} name The name of the kind.
*/
/**
* @typedef Key
* @memberOf! datastore(v1beta3)
* @type object
* @property {datastore(v1beta3).PathElement[]} path The entity path.
An entity path consists of one or more elements composed of a kind and a
string or numerical identifier, which identify entities. The first
element identifies a _root entity_, the second element identifies
a _child_ of the root entity, the third element identifies a child of the
second entity, and so forth. The entities identified by all prefixes of
the path are called the element's _ancestors_.
An entity path is always fully complete: *all* of the entity's ancestors
are required to be in the path along with the entity identifier itself.
The only exception is that in some documented cases, the identifier in the
last path element (for the entity) itself may be omitted. For example,
the last path element of the key of `Mutation.insert` may have no
identifier.
A path can never be empty, and a path can have at most 100 elements.
* @property {datastore(v1beta3).PartitionId} partitionId Entities are partitioned into subsets, currently identified by a project
ID and namespace ID.
Queries are scoped to a single partition.
*/
/**
* @typedef LatLng
* @memberOf! datastore(v1beta3)
* @type object
* @property {number} longitude The longitude in degrees. It must be in the range [-180.0, +180.0].
* @property {number} latitude The latitude in degrees. It must be in the range [-90.0, +90.0].
*/
/**
* @typedef PropertyReference
* @memberOf! datastore(v1beta3)
* @type object
* @property {string} name The name of the property.
If name includes "."s, it may be interpreted as a property name path.
*/
/**
* @typedef ArrayValue
* @memberOf! datastore(v1beta3)
* @type object
* @property {datastore(v1beta3).Value[]} values Values in the array.
The order of this array may not be preserved if it contains a mix of
indexed and unindexed values.
*/
/**
* @typedef Projection
* @memberOf! datastore(v1beta3)
* @type object
* @property {datastore(v1beta3).PropertyReference} property The property to project.
*/
/**
* @typedef Mutation
* @memberOf! datastore(v1beta3)
* @type object
* @property {datastore(v1beta3).Key} delete The key of the entity to delete. The entity may or may not already exist.
Must have a complete key path and must not be reserved/read-only.
* @property {datastore(v1beta3).Entity} insert The entity to insert. The entity must not already exist.
The entity key's final path element may be incomplete.
* @property {string} baseVersion The version of the entity that this mutation is being applied to. If this
does not match the current version on the server, the mutation conflicts.
* @property {datastore(v1beta3).Entity} update The entity to update. The entity must already exist.
Must have a complete key path.
* @property {datastore(v1beta3).Entity} upsert The entity to upsert. The entity may or may not already exist.
The entity key's final path element may be incomplete.
*/
/**
* @typedef ReadOptions
* @memberOf! datastore(v1beta3)
* @type object
* @property {string} readConsistency The non-transactional read consistency to use.
Cannot be set to `STRONG` for global queries.
* @property {string} transaction The identifier of the transaction in which to read. A
transaction identifier is returned by a call to
Datastore.BeginTransaction.
*/
/**
* @typedef RollbackResponse
* @memberOf! datastore(v1beta3)
* @type object
*/
/**
* @typedef MutationResult
* @memberOf! datastore(v1beta3)
* @type object
* @property {string} version The version of the entity on the server after processing the mutation. If
the mutation doesn't change anything on the server, then the version will
be the version of the current entity or, if no entity is present, a version
that is strictly greater than the version of any previous entity and less
than the version of any possible future entity.
* @property {boolean} conflictDetected Whether a conflict was detected for this mutation. Always false when a
conflict detection strategy field is not set in the mutation.
* @property {datastore(v1beta3).Key} key The automatically allocated key.
Set only when the mutation allocated a key.
*/
/**
* @typedef GqlQuery
* @memberOf! datastore(v1beta3)
* @type object
* @property {string} queryString A string of the format described
[here](https://cloud.google.com/datastore/docs/apis/gql/gql_reference).
* @property {boolean} allowLiterals When false, the query string must not contain any literals and instead must
bind all values. For example,
`SELECT * FROM Kind WHERE a = 'string literal'` is not allowed, while
`SELECT * FROM Kind WHERE a = @value` is.
* @property {object} namedBindings For each non-reserved named binding site in the query string, there must be
a named parameter with that name, but not necessarily the inverse.
Key must match regex `A-Za-z_$*`, must not match regex
`__.*__`, and must not be `""`.
* @property {datastore(v1beta3).GqlQueryParameter[]} positionalBindings Numbered binding site @1 references the first numbered parameter,
effectively using 1-based indexing, rather than the usual 0.
For each binding site numbered i in `query_string`, there must be an i-th
numbered parameter. The inverse must also be true.
*/
/**
* @typedef Filter
* @memberOf! datastore(v1beta3)
* @type object
* @property {datastore(v1beta3).CompositeFilter} compositeFilter A composite filter.
* @property {datastore(v1beta3).PropertyFilter} propertyFilter A filter on a property.
*/
/**
* @typedef RollbackRequest
* @memberOf! datastore(v1beta3)
* @type object
* @property {string} transaction The transaction identifier, returned by a call to
Datastore.BeginTransaction.
*/
/**
* @typedef RunQueryRequest
* @memberOf! datastore(v1beta3)
* @type object
* @property {datastore(v1beta3).ReadOptions} readOptions The options for this query.
* @property {datastore(v1beta3).Query} query The query to run.
* @property {datastore(v1beta3).PartitionId} partitionId Entities are partitioned into subsets, identified by a partition ID.
Queries are scoped to a single partition.
This partition ID is normalized with the standard default context
partition ID.
* @property {datastore(v1beta3).GqlQuery} gqlQuery The GQL query to run.
*/
/**
* @typedef CompositeFilter
* @memberOf! datastore(v1beta3)
* @type object
* @property {string} op The operator for combining multiple filters.
* @property {datastore(v1beta3).Filter[]} filters The list of filters to combine.
Must contain at least one filter.
*/
/**
* @typedef AllocateIdsResponse
* @memberOf! datastore(v1beta3)
* @type object
* @property {datastore(v1beta3).Key[]} keys The keys specified in the request (in the same order), each with
its key path completed with a newly allocated ID.
*/
/**
* @typedef Query
* @memberOf! datastore(v1beta3)
* @type object
* @property {datastore(v1beta3).Filter} filter The filter to apply.
* @property {integer} limit The maximum number of results to return. Applies after all other
constraints. Optional.
Unspecified is interpreted as no limit.
Must be >= 0 if specified.
* @property {integer} offset The number of results to skip. Applies before limit, but after all other
constraints. Optional. Must be >= 0 if specified.
* @property {string} startCursor A starting point for the query results. Query cursors are
returned in query result batches and
[can only be used to continue the same query](https://cloud.google.com/datastore/docs/concepts/queries#cursors_limits_and_offsets).
* @property {datastore(v1beta3).KindExpression[]} kind The kinds to query (if empty, returns entities of all kinds).
Currently at most 1 kind may be specified.
* @property {datastore(v1beta3).PropertyReference[]} distinctOn The properties to make distinct. The query results will contain the first
result for each distinct combination of values for the given properties
(if empty, all results are returned).
* @property {datastore(v1beta3).PropertyOrder[]} order The order to apply to the query results (if empty, order is unspecified).
* @property {datastore(v1beta3).Projection[]} projection The projection to return. Defaults to returning all properties.
* @property {string} endCursor An ending point for the query results. Query cursors are
returned in query result batches and
[can only be used to limit the same query](https://cloud.google.com/datastore/docs/concepts/queries#cursors_limits_and_offsets).
*/
/**
* @typedef PropertyFilter
* @memberOf! datastore(v1beta3)
* @type object
* @property {datastore(v1beta3).Value} value The value to compare the property to.
* @property {datastore(v1beta3).PropertyReference} property The property to filter by.
* @property {string} op The operator to filter by.
*/
/**
* @typedef EntityResult
* @memberOf! datastore(v1beta3)
* @type object
* @property {string} cursor A cursor that points to the position after the result entity.
Set only when the `EntityResult` is part of a `QueryResultBatch` message.
* @property {string} version The version of the entity, a strictly positive number that monotonically
increases with changes to the entity.
This field is set for `FULL` entity
results.
For missing entities in `LookupResponse`, this
is the version of the snapshot that was used to look up the entity, and it
is always set except for eventually consistent reads.
* @property {datastore(v1beta3).Entity} entity The resulting entity.
*/
/**
* @typedef Value
* @memberOf! datastore(v1beta3)
* @type object
* @property {string} nullValue A null value.
* @property {boolean} booleanValue A boolean value.
* @property {string} blobValue A blob value.
May have at most 1,000,000 bytes.
When `exclude_from_indexes` is false, may have at most 1500 bytes.
In JSON requests, must be base64-encoded.
* @property {integer} meaning The `meaning` field should only be populated for backwards compatibility.
* @property {datastore(v1beta3).ArrayValue} arrayValue An array value.
Cannot contain another array value.
A `Value` instance that sets field `array_value` must not set fields
`meaning` or `exclude_from_indexes`.
* @property {datastore(v1beta3).Entity} entityValue An entity value.
- May have no key.
- May have a key with an incomplete key path.
- May have a reserved/read-only key.
* @property {datastore(v1beta3).LatLng} geoPointValue A geo point value representing a point on the surface of Earth.
* @property {datastore(v1beta3).Key} keyValue A key value.
* @property {string} integerValue An integer value.
* @property {string} stringValue A UTF-8 encoded string value.
When `exclude_from_indexes` is false (it is indexed) , may have at most 1500 bytes.
Otherwise, may be set to at least 1,000,000 bytes.
* @property {boolean} excludeFromIndexes If the value should be excluded from all indexes including those defined
explicitly.
* @property {number} doubleValue A double value.
* @property {string} timestampValue A timestamp value.
When stored in the Datastore, precise only to microseconds;
any additional precision is rounded down.
*/
/**
* @typedef CommitResponse
* @memberOf! datastore(v1beta3)
* @type object
* @property {integer} indexUpdates The number of index entries updated during the commit, or zero if none were
updated.
* @property {datastore(v1beta3).MutationResult[]} mutationResults The result of performing the mutations.
The i-th mutation result corresponds to the i-th mutation in the request.
*/
/**
* @typedef PartitionId
* @memberOf! datastore(v1beta3)
* @type object
* @property {string} projectId The ID of the project to which the entities belong.
* @property {string} namespaceId If not empty, the ID of the namespace to which the entities belong.
*/
/**
* @typedef Entity
* @memberOf! datastore(v1beta3)
* @type object
* @property {datastore(v1beta3).Key} key The entity's key.
An entity must have a key, unless otherwise documented (for example,
an entity in `Value.entity_value` may have no key).
An entity's kind is its key path's last element's kind,
or null if it has no key.
* @property {object} properties The entity's properties.
The map's keys are property names.
A property name matching regex `__.*__` is reserved.
A reserved property name is forbidden in certain documented contexts.
The name must not contain more than 500 characters.
The name cannot be `""`.
*/
/**
* @typedef LookupRequest
* @memberOf! datastore(v1beta3)
* @type object
* @property {datastore(v1beta3).ReadOptions} readOptions The options for this lookup request.
* @property {datastore(v1beta3).Key[]} keys Keys of entities to look up.
*/
/**
* @typedef QueryResultBatch
* @memberOf! datastore(v1beta3)
* @type object
* @property {string} skippedCursor A cursor that points to the position after the last skipped result.
Will be set when `skipped_results` != 0.
* @property {integer} skippedResults The number of results skipped, typically because of an offset.
* @property {string} entityResultType The result type for every entity in `entity_results`.
* @property {datastore(v1beta3).EntityResult[]} entityResults The results for this batch.
* @property {string} endCursor A cursor that points to the position after the last result in the batch.
* @property {string} moreResults The state of the query after the current batch.
* @property {string} snapshotVersion The version number of the snapshot this batch was returned from.
This applies to the range of results from the query's `start_cursor` (or
the beginning of the query if no cursor was given) to this batch's
`end_cursor` (not the query's `end_cursor`).
In a single transaction, subsequent query result batches for the same query
can have a greater snapshot version number. Each batch's snapshot version
is valid for all preceding batches.
The value will be zero for eventually consistent queries.
*/
/**
* @typedef PathElement
* @memberOf! datastore(v1beta3)
* @type object
* @property {string} name The name of the entity.
A name matching regex `__.*__` is reserved/read-only.
A name must not be more than 1500 bytes when UTF-8 encoded.
Cannot be `""`.
* @property {string} kind The kind of the entity.
A kind matching regex `__.*__` is reserved/read-only.
A kind must not contain more than 1500 bytes when UTF-8 encoded.
Cannot be `""`.
* @property {string} id The auto-allocated ID of the entity.
Never equal to zero. Values less than zero are discouraged and may not
be supported in the future.
*/
/**
* @typedef GqlQueryParameter
* @memberOf! datastore(v1beta3)
* @type object
* @property {datastore(v1beta3).Value} value A value parameter.
* @property {string} cursor A query cursor. Query cursors are returned in query
result batches.
*/
/**
* @typedef BeginTransactionResponse
* @memberOf! datastore(v1beta3)
* @type object
* @property {string} transaction The transaction identifier (always present).
*/
module.exports = Datastore;
|
| File | Statements | Branches | Functions | Lines | |||||
|---|---|---|---|---|---|---|---|---|---|
| v2beta.js | 1.95% | (4 / 205) | 0% | (0 / 130) | 0% | (0 / 33) | 1.95% | (4 / 205) |
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* Google Cloud Deployment Manager API V2Beta Methods
*
* The Deployment Manager API allows users to declaratively configure, deploy and run complex solutions on the Google Cloud Platform.
*
* @example
* var google = require('googleapis');
* var deploymentmanager = google.deploymentmanager('v2beta');
*
* @namespace deploymentmanager
* @type {Function}
* @version v2beta
* @variation v2beta
* @param {object=} options Options for Deploymentmanager
*/
function Deploymentmanager(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.compositeTypes = {
/**
* deploymentmanager.compositeTypes.delete
*
* @desc Deletes a composite type.
*
* @alias deploymentmanager.compositeTypes.delete
* @memberOf! deploymentmanager(v2beta)
*
* @param {object} params Parameters for request
* @param {string} params.compositeType The name of the type for this request.
* @param {string} params.project The project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/deploymentmanager/v2beta/projects/{project}/global/compositeTypes/{compositeType}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['project', 'compositeType'],
pathParams: ['compositeType', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* deploymentmanager.compositeTypes.get
*
* @desc Gets information about a specific composite type.
*
* @alias deploymentmanager.compositeTypes.get
* @memberOf! deploymentmanager(v2beta)
*
* @param {object} params Parameters for request
* @param {string} params.compositeType The name of the composite type for this request.
* @param {string} params.project The project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/deploymentmanager/v2beta/projects/{project}/global/compositeTypes/{compositeType}',
method: 'GET'
}, options),
params: params,
requiredParams: ['project', 'compositeType'],
pathParams: ['compositeType', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* deploymentmanager.compositeTypes.insert
*
* @desc Creates a composite type.
*
* @alias deploymentmanager.compositeTypes.insert
* @memberOf! deploymentmanager(v2beta)
*
* @param {object} params Parameters for request
* @param {string} params.project The project ID for this request.
* @param {deploymentmanager(v2beta).CompositeType} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/deploymentmanager/v2beta/projects/{project}/global/compositeTypes',
method: 'POST'
}, options),
params: params,
requiredParams: ['project'],
pathParams: ['project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* deploymentmanager.compositeTypes.list
*
* @desc Lists all composite types for Deployment Manager.
*
* @alias deploymentmanager.compositeTypes.list
* @memberOf! deploymentmanager(v2beta)
*
* @param {object} params Parameters for request
* @param {string=} params.filter Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string. The field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field. For example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance. You can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values. To filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.
* @param {integer=} params.maxResults The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)
* @param {string=} params.orderBy Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using orderBy="creationTimestamp desc". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by name or creationTimestamp desc is supported.
* @param {string=} params.pageToken Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.
* @param {string} params.project The project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/deploymentmanager/v2beta/projects/{project}/global/compositeTypes',
method: 'GET'
}, options),
params: params,
requiredParams: ['project'],
pathParams: ['project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* deploymentmanager.compositeTypes.patch
*
* @desc Updates a composite type. This method supports patch semantics.
*
* @alias deploymentmanager.compositeTypes.patch
* @memberOf! deploymentmanager(v2beta)
*
* @param {object} params Parameters for request
* @param {string} params.compositeType The name of the composite type for this request.
* @param {string} params.project The project ID for this request.
* @param {deploymentmanager(v2beta).CompositeType} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/deploymentmanager/v2beta/projects/{project}/global/compositeTypes/{compositeType}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['project', 'compositeType'],
pathParams: ['compositeType', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* deploymentmanager.compositeTypes.update
*
* @desc Updates a composite type.
*
* @alias deploymentmanager.compositeTypes.update
* @memberOf! deploymentmanager(v2beta)
*
* @param {object} params Parameters for request
* @param {string} params.compositeType The name of the composite type for this request.
* @param {string} params.project The project ID for this request.
* @param {deploymentmanager(v2beta).CompositeType} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/deploymentmanager/v2beta/projects/{project}/global/compositeTypes/{compositeType}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['project', 'compositeType'],
pathParams: ['compositeType', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.deployments = {
/**
* deploymentmanager.deployments.cancelPreview
*
* @desc Cancels and removes the preview currently associated with the deployment.
*
* @alias deploymentmanager.deployments.cancelPreview
* @memberOf! deploymentmanager(v2beta)
*
* @param {object} params Parameters for request
* @param {string} params.deployment The name of the deployment for this request.
* @param {string} params.project The project ID for this request.
* @param {deploymentmanager(v2beta).DeploymentsCancelPreviewRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
cancelPreview: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/deploymentmanager/v2beta/projects/{project}/global/deployments/{deployment}/cancelPreview',
method: 'POST'
}, options),
params: params,
requiredParams: ['project', 'deployment'],
pathParams: ['deployment', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* deploymentmanager.deployments.delete
*
* @desc Deletes a deployment and all of the resources in the deployment.
*
* @alias deploymentmanager.deployments.delete
* @memberOf! deploymentmanager(v2beta)
*
* @param {object} params Parameters for request
* @param {string=} params.deletePolicy Sets the policy to use for deleting resources.
* @param {string} params.deployment The name of the deployment for this request.
* @param {string} params.project The project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/deploymentmanager/v2beta/projects/{project}/global/deployments/{deployment}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['project', 'deployment'],
pathParams: ['deployment', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* deploymentmanager.deployments.get
*
* @desc Gets information about a specific deployment.
*
* @alias deploymentmanager.deployments.get
* @memberOf! deploymentmanager(v2beta)
*
* @param {object} params Parameters for request
* @param {string} params.deployment The name of the deployment for this request.
* @param {string} params.project The project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/deploymentmanager/v2beta/projects/{project}/global/deployments/{deployment}',
method: 'GET'
}, options),
params: params,
requiredParams: ['project', 'deployment'],
pathParams: ['deployment', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* deploymentmanager.deployments.getIamPolicy
*
* @desc Gets the access control policy for a resource. May be empty if no such policy or resource exists.
*
* @alias deploymentmanager.deployments.getIamPolicy
* @memberOf! deploymentmanager(v2beta)
*
* @param {object} params Parameters for request
* @param {string} params.project Project ID for this request.
* @param {string} params.resource_ Name of the resource for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
getIamPolicy: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/deploymentmanager/v2beta/projects/{project}/global/deployments/{resource}/getIamPolicy',
method: 'GET'
}, options),
params: params,
requiredParams: ['project', 'resource'],
pathParams: ['project', 'resource'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* deploymentmanager.deployments.insert
*
* @desc Creates a deployment and all of the resources described by the deployment manifest.
*
* @alias deploymentmanager.deployments.insert
* @memberOf! deploymentmanager(v2beta)
*
* @param {object} params Parameters for request
* @param {boolean=} params.preview If set to true, creates a deployment and creates "shell" resources but does not actually instantiate these resources. This allows you to preview what your deployment looks like. After previewing a deployment, you can deploy your resources by making a request with the update() method or you can use the cancelPreview() method to cancel the preview altogether. Note that the deployment will still exist after you cancel the preview and you must separately delete this deployment if you want to remove it.
* @param {string} params.project The project ID for this request.
* @param {deploymentmanager(v2beta).Deployment} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/deploymentmanager/v2beta/projects/{project}/global/deployments',
method: 'POST'
}, options),
params: params,
requiredParams: ['project'],
pathParams: ['project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* deploymentmanager.deployments.list
*
* @desc Lists all deployments for a given project.
*
* @alias deploymentmanager.deployments.list
* @memberOf! deploymentmanager(v2beta)
*
* @param {object} params Parameters for request
* @param {string=} params.filter Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string. The field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field. For example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance. You can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values. To filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.
* @param {integer=} params.maxResults The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)
* @param {string=} params.orderBy Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using orderBy="creationTimestamp desc". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by name or creationTimestamp desc is supported.
* @param {string=} params.pageToken Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.
* @param {string} params.project The project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/deploymentmanager/v2beta/projects/{project}/global/deployments',
method: 'GET'
}, options),
params: params,
requiredParams: ['project'],
pathParams: ['project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* deploymentmanager.deployments.patch
*
* @desc Updates a deployment and all of the resources described by the deployment manifest. This method supports patch semantics.
*
* @alias deploymentmanager.deployments.patch
* @memberOf! deploymentmanager(v2beta)
*
* @param {object} params Parameters for request
* @param {string=} params.createPolicy Sets the policy to use for creating new resources.
* @param {string=} params.deletePolicy Sets the policy to use for deleting resources.
* @param {string} params.deployment The name of the deployment for this request.
* @param {boolean=} params.preview If set to true, updates the deployment and creates and updates the "shell" resources but does not actually alter or instantiate these resources. This allows you to preview what your deployment will look like. You can use this intent to preview how an update would affect your deployment. You must provide a target.config with a configuration if this is set to true. After previewing a deployment, you can deploy your resources by making a request with the update() or you can cancelPreview() to remove the preview altogether. Note that the deployment will still exist after you cancel the preview and you must separately delete this deployment if you want to remove it.
* @param {string} params.project The project ID for this request.
* @param {deploymentmanager(v2beta).Deployment} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/deploymentmanager/v2beta/projects/{project}/global/deployments/{deployment}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['project', 'deployment'],
pathParams: ['deployment', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* deploymentmanager.deployments.setIamPolicy
*
* @desc Sets the access control policy on the specified resource. Replaces any existing policy.
*
* @alias deploymentmanager.deployments.setIamPolicy
* @memberOf! deploymentmanager(v2beta)
*
* @param {object} params Parameters for request
* @param {string} params.project Project ID for this request.
* @param {string} params.resource_ Name of the resource for this request.
* @param {deploymentmanager(v2beta).Policy} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
setIamPolicy: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/deploymentmanager/v2beta/projects/{project}/global/deployments/{resource}/setIamPolicy',
method: 'POST'
}, options),
params: params,
requiredParams: ['project', 'resource'],
pathParams: ['project', 'resource'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* deploymentmanager.deployments.stop
*
* @desc Stops an ongoing operation. This does not roll back any work that has already been completed, but prevents any new work from being started.
*
* @alias deploymentmanager.deployments.stop
* @memberOf! deploymentmanager(v2beta)
*
* @param {object} params Parameters for request
* @param {string} params.deployment The name of the deployment for this request.
* @param {string} params.project The project ID for this request.
* @param {deploymentmanager(v2beta).DeploymentsStopRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
stop: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/deploymentmanager/v2beta/projects/{project}/global/deployments/{deployment}/stop',
method: 'POST'
}, options),
params: params,
requiredParams: ['project', 'deployment'],
pathParams: ['deployment', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* deploymentmanager.deployments.testIamPermissions
*
* @desc Returns permissions that a caller has on the specified resource.
*
* @alias deploymentmanager.deployments.testIamPermissions
* @memberOf! deploymentmanager(v2beta)
*
* @param {object} params Parameters for request
* @param {string} params.project Project ID for this request.
* @param {string} params.resource_ Name of the resource for this request.
* @param {deploymentmanager(v2beta).TestPermissionsRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
testIamPermissions: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/deploymentmanager/v2beta/projects/{project}/global/deployments/{resource}/testIamPermissions',
method: 'POST'
}, options),
params: params,
requiredParams: ['project', 'resource'],
pathParams: ['project', 'resource'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* deploymentmanager.deployments.update
*
* @desc Updates a deployment and all of the resources described by the deployment manifest.
*
* @alias deploymentmanager.deployments.update
* @memberOf! deploymentmanager(v2beta)
*
* @param {object} params Parameters for request
* @param {string=} params.createPolicy Sets the policy to use for creating new resources.
* @param {string=} params.deletePolicy Sets the policy to use for deleting resources.
* @param {string} params.deployment The name of the deployment for this request.
* @param {boolean=} params.preview If set to true, updates the deployment and creates and updates the "shell" resources but does not actually alter or instantiate these resources. This allows you to preview what your deployment will look like. You can use this intent to preview how an update would affect your deployment. You must provide a target.config with a configuration if this is set to true. After previewing a deployment, you can deploy your resources by making a request with the update() or you can cancelPreview() to remove the preview altogether. Note that the deployment will still exist after you cancel the preview and you must separately delete this deployment if you want to remove it.
* @param {string} params.project The project ID for this request.
* @param {deploymentmanager(v2beta).Deployment} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/deploymentmanager/v2beta/projects/{project}/global/deployments/{deployment}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['project', 'deployment'],
pathParams: ['deployment', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.manifests = {
/**
* deploymentmanager.manifests.get
*
* @desc Gets information about a specific manifest.
*
* @alias deploymentmanager.manifests.get
* @memberOf! deploymentmanager(v2beta)
*
* @param {object} params Parameters for request
* @param {string} params.deployment The name of the deployment for this request.
* @param {string} params.manifest The name of the manifest for this request.
* @param {string} params.project The project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/deploymentmanager/v2beta/projects/{project}/global/deployments/{deployment}/manifests/{manifest}',
method: 'GET'
}, options),
params: params,
requiredParams: ['project', 'deployment', 'manifest'],
pathParams: ['deployment', 'manifest', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* deploymentmanager.manifests.list
*
* @desc Lists all manifests for a given deployment.
*
* @alias deploymentmanager.manifests.list
* @memberOf! deploymentmanager(v2beta)
*
* @param {object} params Parameters for request
* @param {string} params.deployment The name of the deployment for this request.
* @param {string=} params.filter Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string. The field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field. For example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance. You can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values. To filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.
* @param {integer=} params.maxResults The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)
* @param {string=} params.orderBy Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using orderBy="creationTimestamp desc". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by name or creationTimestamp desc is supported.
* @param {string=} params.pageToken Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.
* @param {string} params.project The project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/deploymentmanager/v2beta/projects/{project}/global/deployments/{deployment}/manifests',
method: 'GET'
}, options),
params: params,
requiredParams: ['project', 'deployment'],
pathParams: ['deployment', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.operations = {
/**
* deploymentmanager.operations.get
*
* @desc Gets information about a specific operation.
*
* @alias deploymentmanager.operations.get
* @memberOf! deploymentmanager(v2beta)
*
* @param {object} params Parameters for request
* @param {string} params.operation The name of the operation for this request.
* @param {string} params.project The project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/deploymentmanager/v2beta/projects/{project}/global/operations/{operation}',
method: 'GET'
}, options),
params: params,
requiredParams: ['project', 'operation'],
pathParams: ['operation', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* deploymentmanager.operations.list
*
* @desc Lists all operations for a project.
*
* @alias deploymentmanager.operations.list
* @memberOf! deploymentmanager(v2beta)
*
* @param {object} params Parameters for request
* @param {string=} params.filter Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string. The field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field. For example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance. You can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values. To filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.
* @param {integer=} params.maxResults The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)
* @param {string=} params.orderBy Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using orderBy="creationTimestamp desc". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by name or creationTimestamp desc is supported.
* @param {string=} params.pageToken Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.
* @param {string} params.project The project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/deploymentmanager/v2beta/projects/{project}/global/operations',
method: 'GET'
}, options),
params: params,
requiredParams: ['project'],
pathParams: ['project'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.resources = {
/**
* deploymentmanager.resources.get
*
* @desc Gets information about a single resource.
*
* @alias deploymentmanager.resources.get
* @memberOf! deploymentmanager(v2beta)
*
* @param {object} params Parameters for request
* @param {string} params.deployment The name of the deployment for this request.
* @param {string} params.project The project ID for this request.
* @param {string} params.resource_ The name of the resource for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/deploymentmanager/v2beta/projects/{project}/global/deployments/{deployment}/resources/{resource}',
method: 'GET'
}, options),
params: params,
requiredParams: ['project', 'deployment', 'resource'],
pathParams: ['deployment', 'project', 'resource'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* deploymentmanager.resources.list
*
* @desc Lists all resources in a given deployment.
*
* @alias deploymentmanager.resources.list
* @memberOf! deploymentmanager(v2beta)
*
* @param {object} params Parameters for request
* @param {string} params.deployment The name of the deployment for this request.
* @param {string=} params.filter Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string. The field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field. For example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance. You can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values. To filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.
* @param {integer=} params.maxResults The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)
* @param {string=} params.orderBy Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using orderBy="creationTimestamp desc". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by name or creationTimestamp desc is supported.
* @param {string=} params.pageToken Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.
* @param {string} params.project The project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/deploymentmanager/v2beta/projects/{project}/global/deployments/{deployment}/resources',
method: 'GET'
}, options),
params: params,
requiredParams: ['project', 'deployment'],
pathParams: ['deployment', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.typeProviders = {
/**
* deploymentmanager.typeProviders.delete
*
* @desc Deletes a type provider.
*
* @alias deploymentmanager.typeProviders.delete
* @memberOf! deploymentmanager(v2beta)
*
* @param {object} params Parameters for request
* @param {string} params.project The project ID for this request.
* @param {string} params.typeProvider The name of the type provider for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/deploymentmanager/v2beta/projects/{project}/global/typeProviders/{typeProvider}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['project', 'typeProvider'],
pathParams: ['project', 'typeProvider'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* deploymentmanager.typeProviders.get
*
* @desc Gets information about a specific type provider.
*
* @alias deploymentmanager.typeProviders.get
* @memberOf! deploymentmanager(v2beta)
*
* @param {object} params Parameters for request
* @param {string} params.project The project ID for this request.
* @param {string} params.typeProvider The name of the type provider for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/deploymentmanager/v2beta/projects/{project}/global/typeProviders/{typeProvider}',
method: 'GET'
}, options),
params: params,
requiredParams: ['project', 'typeProvider'],
pathParams: ['project', 'typeProvider'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* deploymentmanager.typeProviders.getType
*
* @desc Gets a type info for a type provided by a TypeProvider.
*
* @alias deploymentmanager.typeProviders.getType
* @memberOf! deploymentmanager(v2beta)
*
* @param {object} params Parameters for request
* @param {string} params.project The project ID for this request.
* @param {string} params.type The name of the type provider for this request.
* @param {string} params.typeProvider The name of the type provider for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
getType: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/deploymentmanager/v2beta/projects/{project}/global/typeProviders/{typeProvider}/types/{type}',
method: 'GET'
}, options),
params: params,
requiredParams: ['project', 'typeProvider', 'type'],
pathParams: ['project', 'type', 'typeProvider'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* deploymentmanager.typeProviders.insert
*
* @desc Creates a type provider.
*
* @alias deploymentmanager.typeProviders.insert
* @memberOf! deploymentmanager(v2beta)
*
* @param {object} params Parameters for request
* @param {string} params.project The project ID for this request.
* @param {deploymentmanager(v2beta).TypeProvider} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/deploymentmanager/v2beta/projects/{project}/global/typeProviders',
method: 'POST'
}, options),
params: params,
requiredParams: ['project'],
pathParams: ['project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* deploymentmanager.typeProviders.list
*
* @desc Lists all resource type providers for Deployment Manager.
*
* @alias deploymentmanager.typeProviders.list
* @memberOf! deploymentmanager(v2beta)
*
* @param {object} params Parameters for request
* @param {string=} params.filter Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string. The field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field. For example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance. You can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values. To filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.
* @param {integer=} params.maxResults The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)
* @param {string=} params.orderBy Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using orderBy="creationTimestamp desc". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by name or creationTimestamp desc is supported.
* @param {string=} params.pageToken Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.
* @param {string} params.project The project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/deploymentmanager/v2beta/projects/{project}/global/typeProviders',
method: 'GET'
}, options),
params: params,
requiredParams: ['project'],
pathParams: ['project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* deploymentmanager.typeProviders.listTypes
*
* @desc Lists all the type info for a TypeProvider.
*
* @alias deploymentmanager.typeProviders.listTypes
* @memberOf! deploymentmanager(v2beta)
*
* @param {object} params Parameters for request
* @param {string=} params.filter Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string. The field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field. For example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance. You can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values. To filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.
* @param {integer=} params.maxResults The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)
* @param {string=} params.orderBy Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using orderBy="creationTimestamp desc". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by name or creationTimestamp desc is supported.
* @param {string=} params.pageToken Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.
* @param {string} params.project The project ID for this request.
* @param {string} params.typeProvider The name of the type provider for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
listTypes: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/deploymentmanager/v2beta/projects/{project}/global/typeProviders/{typeProvider}/types',
method: 'GET'
}, options),
params: params,
requiredParams: ['project', 'typeProvider'],
pathParams: ['project', 'typeProvider'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* deploymentmanager.typeProviders.patch
*
* @desc Updates a type provider. This method supports patch semantics.
*
* @alias deploymentmanager.typeProviders.patch
* @memberOf! deploymentmanager(v2beta)
*
* @param {object} params Parameters for request
* @param {string} params.project The project ID for this request.
* @param {string} params.typeProvider The name of the type provider for this request.
* @param {deploymentmanager(v2beta).TypeProvider} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/deploymentmanager/v2beta/projects/{project}/global/typeProviders/{typeProvider}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['project', 'typeProvider'],
pathParams: ['project', 'typeProvider'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* deploymentmanager.typeProviders.update
*
* @desc Updates a type provider.
*
* @alias deploymentmanager.typeProviders.update
* @memberOf! deploymentmanager(v2beta)
*
* @param {object} params Parameters for request
* @param {string} params.project The project ID for this request.
* @param {string} params.typeProvider The name of the type provider for this request.
* @param {deploymentmanager(v2beta).TypeProvider} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/deploymentmanager/v2beta/projects/{project}/global/typeProviders/{typeProvider}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['project', 'typeProvider'],
pathParams: ['project', 'typeProvider'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.types = {
/**
* deploymentmanager.types.list
*
* @desc Lists all resource types for Deployment Manager.
*
* @alias deploymentmanager.types.list
* @memberOf! deploymentmanager(v2beta)
*
* @param {object} params Parameters for request
* @param {string=} params.filter Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string. The field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field. For example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance. You can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values. To filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.
* @param {integer=} params.maxResults The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)
* @param {string=} params.orderBy Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using orderBy="creationTimestamp desc". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by name or creationTimestamp desc is supported.
* @param {string=} params.pageToken Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.
* @param {string} params.project The project ID for this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/deploymentmanager/v2beta/projects/{project}/global/types',
method: 'GET'
}, options),
params: params,
requiredParams: ['project'],
pathParams: ['project'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
}
/**
* @typedef AuditConfig
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {deploymentmanager(v2beta).AuditLogConfig[]} auditLogConfigs The configuration for logging of each type of permission.
* @property {string[]} exemptedMembers
* @property {string} service Specifies a service that will be enabled for audit logging. For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` is a special value that covers all services.
*/
/**
* @typedef AuditLogConfig
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {string[]} exemptedMembers Specifies the identities that do not cause logging for this type of permission. Follows the same format of [Binding.members][].
* @property {string} logType The log type that this config enables.
*/
/**
* @typedef BaseType
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {deploymentmanager(v2beta).CollectionOverride[]} collectionOverrides Allows resource handling overrides for specific collections
* @property {deploymentmanager(v2beta).Credential} credential Credential used when interacting with this type.
* @property {string} descriptorUrl Descriptor Url for the this type.
* @property {deploymentmanager(v2beta).Options} options Options to apply when handling any resources in this service.
*/
/**
* @typedef BasicAuth
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {string} password
* @property {string} user
*/
/**
* @typedef Binding
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {string[]} members Specifies the identities requesting access for a Cloud Platform resource. `members` can have the following values:
* `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account.
* `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account.
* `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@gmail.com` or `joe@example.com`.
* `serviceAccount:{emailid}`: An email address that represents a service account. For example, `my-other-app@appspot.gserviceaccount.com`.
* `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`.
* `domain:{domain}`: A Google Apps domain name that represents all the users of that domain. For example, `google.com` or `example.com`.
* @property {string} role Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
*/
/**
* @typedef CollectionOverride
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {string} collection The collection that identifies this resource within its service.
* @property {deploymentmanager(v2beta).Options} options The options to apply to this resource-level override
*/
/**
* @typedef CompositeType
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {string} description An optional textual description of the resource; provided by the client when the resource is created.
* @property {string} id [Output Only] Unique identifier for the resource; defined by the server.
* @property {string} insertTime [Output Only] Timestamp when the composite type was created, in RFC3339 text format.
* @property {deploymentmanager(v2beta).CompositeTypeLabelEntry[]} labels Map of labels; provided by the client when the resource is created or updated. Specifically: Label keys must be between 1 and 63 characters long and must conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])? Label values must be between 0 and 63 characters long and must conform to the regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)?
* @property {string} name Name of the composite type.
* @property {deploymentmanager(v2beta).Operation} operation [Output Only] The Operation that most recently ran, or is currently running, on this composite type.
* @property {string} selfLink [Output Only] Self link for the type provider.
* @property {string} status
* @property {deploymentmanager(v2beta).TemplateContents} templateContents Files for the template type.
*/
/**
* @typedef CompositeTypeLabelEntry
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {string} key
* @property {string} value
*/
/**
* @typedef CompositeTypesListResponse
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {deploymentmanager(v2beta).CompositeType[]} compositeTypes [Output Only] A list of resource composite types supported by Deployment Manager.
* @property {string} nextPageToken A token used to continue a truncated list request.
*/
/**
* @typedef Condition
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {string} iam Trusted attributes supplied by the IAM system.
* @property {string} op An operator to apply the subject with.
* @property {string} svc Trusted attributes discharged by the service.
* @property {string} sys Trusted attributes supplied by any service that owns resources and uses the IAM system for access control.
* @property {string} value DEPRECATED. Use 'values' instead.
* @property {string[]} values The objects of the condition. This is mutually exclusive with 'value'.
*/
/**
* @typedef ConfigFile
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {string} content The contents of the file.
*/
/**
* @typedef Credential
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {deploymentmanager(v2beta).BasicAuth} basicAuth Basic Auth Credentials for this Type.
*/
/**
* @typedef Deployment
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {string} description An optional user-provided description of the deployment.
* @property {string} fingerprint Provides a fingerprint to use in requests to modify a deployment, such as update(), stop(), and cancelPreview() requests. A fingerprint is a randomly generated value that must be provided with update(), stop(), and cancelPreview() requests to perform optimistic locking. This ensures optimistic concurrency so that only one request happens at a time.
The fingerprint is initially generated by Deployment Manager and changes after every request to modify data. To get the latest fingerprint value, perform a get() request to a deployment.
* @property {string} id [Output Only] Unique identifier for the resource; defined by the server.
* @property {string} insertTime [Output Only] Timestamp when the deployment was created, in RFC3339 text format .
* @property {deploymentmanager(v2beta).DeploymentLabelEntry[]} labels Map of labels; provided by the client when the resource is created or updated. Specifically: Label keys must be between 1 and 63 characters long and must conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])? Label values must be between 0 and 63 characters long and must conform to the regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)?
* @property {string} manifest [Output Only] URL of the manifest representing the last manifest that was successfully deployed.
* @property {string} name Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
* @property {deploymentmanager(v2beta).Operation} operation [Output Only] The Operation that most recently ran, or is currently running, on this deployment.
* @property {string} selfLink [Output Only] Self link for the deployment.
* @property {deploymentmanager(v2beta).TargetConfiguration} target [Input Only] The parameters that define your deployment, including the deployment configuration and relevant templates.
* @property {deploymentmanager(v2beta).DeploymentUpdate} update [Output Only] If Deployment Manager is currently updating or previewing an update to this deployment, the updated configuration appears here.
*/
/**
* @typedef DeploymentLabelEntry
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {string} key
* @property {string} value
*/
/**
* @typedef DeploymentUpdate
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {string} description [Output Only] An optional user-provided description of the deployment after the current update has been applied.
* @property {deploymentmanager(v2beta).DeploymentUpdateLabelEntry[]} labels [Output Only] Map of labels; provided by the client when the resource is created or updated. Specifically: Label keys must be between 1 and 63 characters long and must conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])? Label values must be between 0 and 63 characters long and must conform to the regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)?
* @property {string} manifest [Output Only] URL of the manifest representing the update configuration of this deployment.
*/
/**
* @typedef DeploymentUpdateLabelEntry
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {string} key
* @property {string} value
*/
/**
* @typedef DeploymentsCancelPreviewRequest
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {string} fingerprint Specifies a fingerprint for cancelPreview() requests. A fingerprint is a randomly generated value that must be provided in cancelPreview() requests to perform optimistic locking. This ensures optimistic concurrency so that the deployment does not have conflicting requests (e.g. if someone attempts to make a new update request while another user attempts to cancel a preview, this would prevent one of the requests).
The fingerprint is initially generated by Deployment Manager and changes after every request to modify a deployment. To get the latest fingerprint value, perform a get() request on the deployment.
*/
/**
* @typedef DeploymentsListResponse
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {deploymentmanager(v2beta).Deployment[]} deployments [Output Only] The deployments contained in this response.
* @property {string} nextPageToken [Output Only] A token used to continue a truncated list request.
*/
/**
* @typedef DeploymentsStopRequest
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {string} fingerprint Specifies a fingerprint for stop() requests. A fingerprint is a randomly generated value that must be provided in stop() requests to perform optimistic locking. This ensures optimistic concurrency so that the deployment does not have conflicting requests (e.g. if someone attempts to make a new update request while another user attempts to stop an ongoing update request, this would prevent a collision).
The fingerprint is initially generated by Deployment Manager and changes after every request to modify a deployment. To get the latest fingerprint value, perform a get() request on the deployment.
*/
/**
* @typedef ImportFile
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {string} content The contents of the file.
* @property {string} name The name of the file.
*/
/**
* @typedef InputMapping
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {string} fieldName The name of the field that is going to be injected.
* @property {string} location The location where this mapping applies.
* @property {string} methodMatch Regex to evaluate on method to decide if input applies.
* @property {string} value A jsonPath expression to select an element.
*/
/**
* @typedef LogConfig
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {deploymentmanager(v2beta).LogConfigCounterOptions} counter Counter options.
*/
/**
* @typedef LogConfigCounterOptions
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {string} field The field value to attribute.
* @property {string} metric The metric to update.
*/
/**
* @typedef Manifest
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {deploymentmanager(v2beta).ConfigFile} config [Output Only] The YAML configuration for this manifest.
* @property {string} expandedConfig [Output Only] The fully-expanded configuration file, including any templates and references.
* @property {string} id [Output Only] Unique identifier for the resource; defined by the server.
* @property {deploymentmanager(v2beta).ImportFile[]} imports [Output Only] The imported files for this manifest.
* @property {string} insertTime [Output Only] Timestamp when the manifest was created, in RFC3339 text format.
* @property {string} layout [Output Only] The YAML layout for this manifest.
* @property {string} name [Output Only] The name of the manifest.
* @property {string} selfLink [Output Only] Self link for the manifest.
*/
/**
* @typedef ManifestsListResponse
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {deploymentmanager(v2beta).Manifest[]} manifests [Output Only] Manifests contained in this list response.
* @property {string} nextPageToken [Output Only] A token used to continue a truncated list request.
*/
/**
* @typedef Operation
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {string} clientOperationId [Output Only] Reserved for future use.
* @property {string} creationTimestamp [Deprecated] This field is deprecated.
* @property {string} description [Output Only] A textual description of the operation, which is set when the operation is created.
* @property {string} endTime [Output Only] The time that this operation was completed. This value is in RFC3339 text format.
* @property {object} error [Output Only] If errors are generated during processing of the operation, this field will be populated.
* @property {string} httpErrorMessage [Output Only] If the operation fails, this field contains the HTTP error message that was returned, such as NOT FOUND.
* @property {integer} httpErrorStatusCode [Output Only] If the operation fails, this field contains the HTTP error status code that was returned. For example, a 404 means the resource was not found.
* @property {string} id [Output Only] The unique identifier for the resource. This identifier is defined by the server.
* @property {string} insertTime [Output Only] The time that this operation was requested. This value is in RFC3339 text format.
* @property {string} kind [Output Only] Type of the resource. Always compute#operation for Operation resources.
* @property {string} name [Output Only] Name of the resource.
* @property {string} operationType [Output Only] The type of operation, such as insert, update, or delete, and so on.
* @property {integer} progress [Output Only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess when the operation will be complete. This number should monotonically increase as the operation progresses.
* @property {string} region [Output Only] The URL of the region where the operation resides. Only available when performing regional operations.
* @property {string} selfLink [Output Only] Server-defined URL for the resource.
* @property {string} startTime [Output Only] The time that this operation was started by the server. This value is in RFC3339 text format.
* @property {string} status [Output Only] The status of the operation, which can be one of the following: PENDING, RUNNING, or DONE.
* @property {string} statusMessage [Output Only] An optional textual description of the current status of the operation.
* @property {string} targetId [Output Only] The unique target ID, which identifies a specific incarnation of the target resource.
* @property {string} targetLink [Output Only] The URL of the resource that the operation modifies. For operations related to creating a snapshot, this points to the persistent disk that the snapshot was created from.
* @property {string} user [Output Only] User who requested the operation, for example: user@example.com.
* @property {object[]} warnings [Output Only] If warning messages are generated during processing of the operation, this field will be populated.
* @property {string} zone [Output Only] The URL of the zone where the operation resides. Only available when performing per-zone operations.
*/
/**
* @typedef OperationsListResponse
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {string} nextPageToken [Output Only] A token used to continue a truncated list request.
* @property {deploymentmanager(v2beta).Operation[]} operations [Output Only] Operations contained in this list response.
*/
/**
* @typedef Options
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {deploymentmanager(v2beta).InputMapping[]} inputMappings The mappings that apply for requests.
* @property {deploymentmanager(v2beta).ValidationOptions} validationOptions Options for how to validate and process properties on a resource.
* @property {string} virtualProperties Additional properties block described as a jsonSchema, these properties will never be part of the json payload, but they can be consumed by InputMappings, this must be a valid json schema draft-04. The properties specified here will be decouple in a different section. This schema will be merged to the schema validation, and properties here will be extracted From the payload and consumed explicitly by InputMappings. ex: field1: type: string field2: type: number
*/
/**
* @typedef Policy
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {deploymentmanager(v2beta).AuditConfig[]} auditConfigs Specifies cloud audit logging configuration for this policy.
* @property {deploymentmanager(v2beta).Binding[]} bindings Associates a list of `members` to a `role`. Multiple `bindings` must not be specified for the same `role`. `bindings` with no members will result in an error.
* @property {string} etag `etag` is used for optimistic concurrency control as a way to help prevent simultaneous updates of a policy from overwriting each other. It is strongly suggested that systems make use of the `etag` in the read-modify-write cycle to perform policy updates in order to avoid race conditions: An `etag` is returned in the response to `getIamPolicy`, and systems are expected to put that etag in the request to `setIamPolicy` to ensure that their change will be applied to the same version of the policy.
If no `etag` is provided in the call to `setIamPolicy`, then the existing policy is overwritten blindly.
* @property {boolean} iamOwned
* @property {deploymentmanager(v2beta).Rule[]} rules If more than one rule is specified, the rules are applied in the following manner: - All matching LOG rules are always applied. - If any DENY/DENY_WITH_LOG rule matches, permission is denied. Logging will be applied if one or more matching rule requires logging. - Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is granted. Logging will be applied if one or more matching rule requires logging. - Otherwise, if no rule applies, permission is denied.
* @property {integer} version Version of the `Policy`. The default version is 0.
*/
/**
* @typedef Resource
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {deploymentmanager(v2beta).ResourceAccessControl} accessControl The Access Control Policy set on this resource.
* @property {string} finalProperties [Output Only] The evaluated properties of the resource with references expanded. Returned as serialized YAML.
* @property {string} id [Output Only] Unique identifier for the resource; defined by the server.
* @property {string} insertTime [Output Only] Timestamp when the resource was created or acquired, in RFC3339 text format .
* @property {string} manifest [Output Only] URL of the manifest representing the current configuration of this resource.
* @property {string} name [Output Only] The name of the resource as it appears in the YAML config.
* @property {string} properties [Output Only] The current properties of the resource before any references have been filled in. Returned as serialized YAML.
* @property {string} type [Output Only] The type of the resource, for example compute.v1.instance, or cloudfunctions.v1beta1.function.
* @property {deploymentmanager(v2beta).ResourceUpdate} update [Output Only] If Deployment Manager is currently updating or previewing an update to this resource, the updated configuration appears here.
* @property {string} updateTime [Output Only] Timestamp when the resource was updated, in RFC3339 text format .
* @property {string} url [Output Only] The URL of the actual resource.
* @property {object[]} warnings [Output Only] If warning messages are generated during processing of this resource, this field will be populated.
*/
/**
* @typedef ResourceAccessControl
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {string} gcpIamPolicy The GCP IAM Policy to set on the resource.
*/
/**
* @typedef ResourceUpdate
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {deploymentmanager(v2beta).ResourceAccessControl} accessControl The Access Control Policy to set on this resource after updating the resource itself.
* @property {object} error [Output Only] If errors are generated during update of the resource, this field will be populated.
* @property {string} finalProperties [Output Only] The expanded properties of the resource with reference values expanded. Returned as serialized YAML.
* @property {string} intent [Output Only] The intent of the resource: PREVIEW, UPDATE, or CANCEL.
* @property {string} manifest [Output Only] URL of the manifest representing the update configuration of this resource.
* @property {string} properties [Output Only] The set of updated properties for this resource, before references are expanded. Returned as serialized YAML.
* @property {string} state [Output Only] The state of the resource.
* @property {object[]} warnings [Output Only] If warning messages are generated during processing of this resource, this field will be populated.
*/
/**
* @typedef ResourcesListResponse
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {string} nextPageToken A token used to continue a truncated list request.
* @property {deploymentmanager(v2beta).Resource[]} resources Resources contained in this list response.
*/
/**
* @typedef Rule
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {string} action Required
* @property {deploymentmanager(v2beta).Condition[]} conditions Additional restrictions that must be met
* @property {string} description Human-readable description of the rule.
* @property {string[]} ins If one or more 'in' clauses are specified, the rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is in at least one of these entries.
* @property {deploymentmanager(v2beta).LogConfig[]} logConfigs The config returned to callers of tech.iam.IAM.CheckPolicy for any entries that match the LOG action.
* @property {string[]} notIns If one or more 'not_in' clauses are specified, the rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries.
* @property {string[]} permissions A permission is a string of form '..' (e.g., 'storage.buckets.list'). A value of '*' matches all permissions, and a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs.
*/
/**
* @typedef TargetConfiguration
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {deploymentmanager(v2beta).ConfigFile} config The configuration to use for this deployment.
* @property {deploymentmanager(v2beta).ImportFile[]} imports Specifies any files to import for this configuration. This can be used to import templates or other files. For example, you might import a text file in order to use the file in a template.
*/
/**
* @typedef TemplateContents
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {deploymentmanager(v2beta).ImportFile[]} imports Import files referenced by the main template.
* @property {string} interpreter Which interpreter (python or jinja) should be used during expansion.
* @property {string} schema The contents of the template schema.
* @property {string} template The contents of the main template file.
*/
/**
* @typedef TestPermissionsRequest
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {string[]} permissions The set of permissions to check for the 'resource'. Permissions with wildcards (such as '*' or 'storage.*') are not allowed.
*/
/**
* @typedef TestPermissionsResponse
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {string[]} permissions A subset of `TestPermissionsRequest.permissions` that the caller is allowed.
*/
/**
* @typedef Type
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {deploymentmanager(v2beta).BaseType} base Base Type (configurable service) that backs this Type.
* @property {string} description An optional textual description of the resource; provided by the client when the resource is created.
* @property {string} id [Output Only] Unique identifier for the resource; defined by the server.
* @property {string} insertTime [Output Only] Timestamp when the type was created, in RFC3339 text format.
* @property {deploymentmanager(v2beta).TypeLabelEntry[]} labels Map of labels; provided by the client when the resource is created or updated. Specifically: Label keys must be between 1 and 63 characters long and must conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])? Label values must be between 0 and 63 characters long and must conform to the regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)?
* @property {string} name Name of the type.
* @property {deploymentmanager(v2beta).Operation} operation [Output Only] The Operation that most recently ran, or is currently running, on this type.
* @property {string} selfLink [Output Only] Self link for the type.
*/
/**
* @typedef TypeInfo
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {string} description The description of the type.
* @property {string} documentationLink For swagger 2.0 externalDocs field will be used. For swagger 1.2 this field will be empty.
* @property {string} kind [Output Only] Type of the output. Always deploymentManager#TypeInfo for TypeInfo.
* @property {string} name The base type or composite type name.
* @property {deploymentmanager(v2beta).TypeInfoSchemaInfo} schema For base types with a collection, we return a schema and documentation link For template types, we return only a schema
* @property {string} selfLink [Output Only] Server-defined URL for the resource.
* @property {string} title The title on the API descriptor URL provided.
*/
/**
* @typedef TypeInfoSchemaInfo
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {string} input The properties that this composite type or base type collection accept as input, represented as a json blob, format is: JSON Schema Draft V4
* @property {string} output The properties that this composite type or base type collection exposes as output, these properties can be used for references, represented as json blob, format is: JSON Schema Draft V4
*/
/**
* @typedef TypeLabelEntry
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {string} key
* @property {string} value
*/
/**
* @typedef TypeProvider
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {deploymentmanager(v2beta).CollectionOverride[]} collectionOverrides Allows resource handling overrides for specific collections
* @property {deploymentmanager(v2beta).Credential} credential Credential used when interacting with this type.
* @property {string} description An optional textual description of the resource; provided by the client when the resource is created.
* @property {string} descriptorUrl Descriptor Url for the this type provider.
* @property {string} id [Output Only] Unique identifier for the resource; defined by the server.
* @property {string} insertTime [Output Only] Timestamp when the type provider was created, in RFC3339 text format.
* @property {deploymentmanager(v2beta).TypeProviderLabelEntry[]} labels Map of labels; provided by the client when the resource is created or updated. Specifically: Label keys must be between 1 and 63 characters long and must conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])? Label values must be between 0 and 63 characters long and must conform to the regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)?
* @property {string} name Name of the type provider.
* @property {deploymentmanager(v2beta).Operation} operation [Output Only] The Operation that most recently ran, or is currently running, on this type provider.
* @property {deploymentmanager(v2beta).Options} options Options to apply when handling any resources in this service.
* @property {string} selfLink [Output Only] Self link for the type provider.
*/
/**
* @typedef TypeProviderLabelEntry
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {string} key
* @property {string} value
*/
/**
* @typedef TypeProvidersListResponse
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {string} nextPageToken A token used to continue a truncated list request.
* @property {deploymentmanager(v2beta).TypeProvider[]} typeProviders [Output Only] A list of resource type providers supported by Deployment Manager.
*/
/**
* @typedef TypeProvidersListTypesResponse
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {string} nextPageToken A token used to continue a truncated list request.
* @property {deploymentmanager(v2beta).TypeInfo[]} types [Output Only] A list of resource type info.
*/
/**
* @typedef TypesListResponse
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {string} nextPageToken A token used to continue a truncated list request.
* @property {deploymentmanager(v2beta).Type[]} types [Output Only] A list of resource types supported by Deployment Manager.
*/
/**
* @typedef ValidationOptions
* @memberOf! deploymentmanager(v2beta)
* @type object
* @property {string} schemaValidation Customize how deployment manager will validate the resource against schema errors.
* @property {string} undeclaredProperties Specify what to do with extra properties when executing a request.
*/
module.exports = Deploymentmanager;
|
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 1791 1792 1793 1794 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822 1823 1824 1825 1826 1827 1828 1829 1830 1831 1832 1833 1834 1835 1836 1837 1838 1839 1840 1841 1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853 1854 1855 1856 1857 1858 1859 1860 1861 1862 1863 1864 1865 1866 1867 1868 1869 1870 1871 1872 1873 1874 1875 1876 1877 1878 1879 1880 1881 1882 1883 1884 1885 1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896 1897 1898 1899 1900 1901 1902 1903 1904 1905 1906 1907 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 1939 1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 2026 2027 2028 2029 2030 2031 2032 2033 2034 2035 2036 2037 2038 2039 2040 2041 2042 2043 2044 2045 2046 2047 2048 2049 2050 2051 2052 2053 2054 2055 2056 2057 2058 2059 2060 2061 2062 2063 2064 2065 2066 2067 2068 2069 2070 2071 2072 2073 2074 2075 2076 2077 2078 2079 2080 2081 2082 2083 2084 2085 2086 2087 2088 2089 2090 2091 2092 2093 2094 2095 2096 2097 2098 2099 2100 2101 2102 2103 2104 2105 2106 2107 2108 2109 2110 2111 2112 2113 2114 2115 2116 2117 2118 2119 2120 2121 2122 2123 2124 2125 2126 2127 2128 2129 2130 2131 2132 2133 2134 2135 2136 2137 2138 2139 2140 2141 2142 2143 2144 2145 2146 2147 2148 2149 2150 2151 2152 2153 2154 2155 2156 2157 2158 2159 2160 2161 2162 2163 2164 2165 2166 2167 2168 2169 2170 2171 2172 2173 2174 2175 2176 2177 2178 2179 2180 2181 2182 2183 2184 2185 2186 2187 2188 2189 2190 2191 2192 2193 2194 2195 2196 2197 2198 2199 2200 2201 2202 2203 2204 2205 2206 2207 2208 2209 2210 2211 2212 2213 2214 2215 2216 2217 2218 2219 2220 2221 2222 2223 2224 2225 2226 2227 2228 2229 2230 2231 2232 2233 2234 2235 2236 2237 2238 2239 2240 2241 2242 2243 2244 2245 2246 2247 2248 2249 2250 2251 2252 2253 2254 2255 2256 2257 2258 2259 2260 2261 2262 2263 2264 2265 2266 2267 2268 2269 2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 2280 2281 2282 2283 2284 2285 2286 2287 2288 2289 2290 2291 2292 2293 2294 2295 2296 2297 2298 2299 2300 2301 2302 2303 2304 2305 2306 2307 2308 2309 2310 2311 2312 2313 2314 2315 2316 2317 2318 2319 2320 2321 2322 2323 2324 2325 2326 2327 2328 2329 2330 2331 2332 2333 2334 2335 2336 2337 2338 2339 2340 2341 2342 2343 2344 2345 2346 2347 2348 2349 2350 2351 2352 2353 2354 2355 2356 2357 2358 2359 2360 2361 2362 2363 2364 2365 2366 2367 2368 2369 2370 2371 2372 2373 2374 2375 2376 2377 2378 2379 2380 2381 2382 2383 2384 2385 2386 2387 2388 2389 2390 2391 2392 2393 2394 2395 2396 2397 2398 2399 2400 2401 2402 2403 2404 2405 2406 2407 2408 2409 2410 2411 2412 2413 2414 2415 2416 2417 2418 2419 2420 2421 2422 2423 2424 2425 2426 2427 2428 2429 2430 2431 2432 2433 2434 2435 2436 2437 2438 2439 2440 2441 2442 2443 2444 2445 2446 2447 2448 2449 2450 2451 2452 2453 2454 2455 2456 2457 2458 2459 2460 2461 2462 2463 2464 2465 2466 2467 2468 2469 2470 2471 2472 2473 2474 2475 2476 2477 2478 2479 2480 2481 2482 2483 2484 2485 2486 2487 2488 2489 2490 2491 2492 2493 2494 2495 2496 2497 2498 2499 2500 2501 2502 2503 2504 2505 2506 2507 2508 2509 2510 2511 2512 2513 2514 2515 2516 2517 2518 2519 2520 2521 2522 2523 2524 2525 2526 2527 2528 2529 2530 2531 2532 2533 2534 2535 2536 2537 2538 2539 2540 2541 2542 2543 2544 2545 2546 2547 2548 2549 2550 2551 2552 2553 2554 2555 2556 2557 2558 2559 2560 2561 2562 2563 2564 2565 2566 2567 2568 2569 2570 2571 2572 2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 2730 2731 2732 2733 2734 2735 2736 2737 2738 2739 2740 2741 2742 2743 2744 2745 2746 2747 2748 2749 2750 2751 2752 2753 2754 2755 2756 2757 2758 2759 2760 2761 2762 2763 2764 2765 2766 2767 2768 2769 2770 2771 2772 2773 2774 2775 2776 2777 2778 2779 2780 2781 2782 2783 2784 2785 2786 2787 2788 2789 2790 2791 2792 2793 2794 2795 2796 2797 2798 2799 2800 2801 2802 2803 2804 2805 2806 2807 2808 2809 2810 2811 2812 2813 2814 2815 2816 2817 2818 2819 2820 2821 2822 2823 2824 2825 2826 2827 2828 2829 2830 2831 2832 2833 2834 2835 2836 2837 2838 2839 2840 2841 2842 2843 2844 2845 2846 2847 2848 2849 2850 2851 2852 2853 2854 2855 2856 2857 2858 2859 2860 2861 2862 2863 2864 2865 2866 2867 2868 2869 2870 2871 2872 2873 2874 2875 2876 2877 2878 2879 2880 2881 2882 2883 2884 2885 2886 2887 2888 2889 2890 2891 2892 2893 2894 2895 2896 2897 2898 2899 2900 2901 2902 2903 2904 2905 2906 2907 2908 2909 2910 2911 2912 2913 2914 2915 2916 2917 2918 2919 2920 2921 2922 2923 2924 2925 2926 2927 2928 2929 2930 2931 2932 2933 2934 2935 2936 2937 2938 2939 2940 2941 2942 2943 2944 2945 2946 2947 2948 2949 2950 2951 2952 2953 2954 2955 2956 2957 2958 2959 2960 2961 2962 2963 2964 2965 2966 2967 2968 2969 2970 2971 2972 2973 2974 2975 2976 2977 2978 2979 2980 2981 2982 2983 2984 2985 2986 2987 2988 2989 2990 2991 2992 2993 2994 2995 2996 2997 2998 2999 3000 3001 3002 3003 3004 3005 3006 3007 3008 3009 3010 3011 3012 3013 3014 3015 3016 3017 3018 3019 3020 3021 3022 3023 3024 3025 3026 3027 3028 3029 3030 3031 3032 3033 3034 3035 3036 3037 3038 3039 3040 3041 3042 3043 3044 3045 3046 3047 3048 3049 3050 3051 3052 3053 3054 3055 3056 3057 3058 3059 3060 3061 3062 3063 3064 3065 3066 3067 3068 3069 3070 3071 3072 3073 3074 3075 3076 3077 3078 3079 3080 3081 3082 3083 3084 3085 3086 3087 3088 3089 3090 3091 3092 3093 3094 3095 3096 3097 3098 3099 3100 3101 3102 3103 3104 3105 3106 3107 3108 3109 3110 3111 3112 3113 3114 3115 3116 3117 3118 3119 3120 3121 3122 3123 3124 3125 3126 3127 3128 3129 3130 3131 3132 3133 3134 3135 3136 3137 3138 3139 3140 3141 3142 3143 3144 3145 3146 3147 3148 3149 3150 3151 3152 3153 3154 3155 3156 3157 3158 3159 3160 3161 3162 3163 3164 3165 3166 3167 3168 3169 3170 3171 3172 3173 3174 3175 3176 3177 3178 3179 3180 3181 3182 3183 3184 3185 3186 3187 3188 3189 3190 3191 3192 3193 3194 3195 3196 3197 3198 3199 3200 3201 3202 3203 3204 3205 3206 3207 3208 3209 3210 3211 3212 3213 3214 3215 3216 3217 3218 3219 3220 3221 3222 3223 3224 3225 3226 3227 3228 3229 3230 3231 3232 3233 3234 3235 3236 3237 3238 3239 3240 3241 3242 3243 3244 3245 3246 3247 3248 3249 3250 3251 3252 3253 3254 3255 3256 3257 3258 3259 3260 3261 3262 3263 3264 3265 3266 3267 3268 3269 3270 3271 3272 3273 3274 3275 3276 3277 3278 3279 3280 3281 3282 3283 3284 3285 3286 3287 3288 3289 3290 3291 3292 3293 3294 3295 3296 3297 3298 3299 3300 3301 3302 3303 3304 3305 3306 3307 3308 3309 3310 3311 3312 3313 3314 3315 3316 3317 3318 3319 3320 3321 3322 3323 3324 3325 3326 3327 3328 3329 3330 3331 3332 3333 3334 3335 3336 3337 3338 3339 3340 3341 3342 3343 3344 3345 3346 3347 3348 3349 3350 3351 3352 3353 3354 3355 3356 3357 3358 3359 3360 3361 3362 3363 3364 3365 3366 3367 3368 3369 3370 3371 3372 3373 3374 3375 3376 3377 3378 3379 3380 3381 3382 3383 3384 3385 3386 3387 3388 3389 3390 3391 3392 3393 3394 3395 3396 3397 3398 3399 3400 3401 3402 3403 3404 3405 3406 3407 3408 3409 3410 3411 3412 3413 3414 3415 3416 3417 3418 3419 3420 3421 3422 3423 3424 3425 3426 3427 3428 3429 3430 3431 3432 3433 3434 3435 3436 3437 3438 3439 3440 3441 3442 3443 3444 3445 3446 3447 3448 3449 3450 3451 3452 3453 3454 3455 3456 3457 3458 3459 3460 3461 3462 3463 3464 3465 3466 3467 3468 3469 3470 3471 3472 3473 3474 3475 3476 3477 3478 3479 3480 3481 3482 3483 3484 3485 3486 3487 3488 3489 3490 3491 3492 3493 3494 3495 3496 3497 3498 3499 3500 3501 3502 3503 3504 3505 3506 3507 3508 3509 3510 3511 3512 3513 3514 3515 3516 3517 3518 3519 3520 3521 3522 3523 3524 3525 3526 3527 3528 3529 3530 3531 3532 3533 3534 3535 3536 3537 3538 3539 3540 3541 3542 3543 3544 3545 3546 3547 3548 3549 3550 3551 3552 3553 3554 3555 3556 3557 3558 3559 3560 3561 3562 3563 3564 3565 3566 3567 3568 3569 3570 3571 3572 3573 3574 3575 3576 3577 3578 3579 3580 3581 3582 3583 3584 3585 3586 3587 3588 3589 3590 3591 3592 3593 3594 3595 3596 3597 3598 3599 3600 3601 3602 3603 3604 3605 3606 3607 3608 3609 3610 3611 3612 3613 3614 3615 3616 3617 3618 3619 3620 3621 3622 3623 3624 3625 3626 3627 3628 3629 3630 3631 3632 3633 3634 3635 3636 3637 3638 3639 3640 3641 3642 3643 3644 3645 3646 3647 3648 3649 3650 3651 3652 3653 3654 3655 3656 3657 3658 3659 3660 3661 3662 3663 3664 3665 3666 3667 3668 3669 3670 3671 3672 3673 3674 3675 3676 3677 3678 3679 3680 3681 3682 3683 3684 3685 3686 3687 3688 3689 3690 3691 3692 3693 3694 3695 3696 3697 3698 3699 3700 3701 3702 3703 3704 3705 3706 3707 3708 3709 3710 3711 3712 3713 3714 3715 3716 3717 3718 3719 3720 3721 3722 3723 3724 3725 3726 3727 3728 3729 3730 3731 3732 3733 3734 3735 3736 3737 3738 3739 3740 3741 3742 3743 3744 3745 3746 3747 3748 3749 3750 3751 3752 3753 3754 3755 3756 3757 3758 3759 3760 3761 3762 3763 3764 3765 3766 3767 3768 3769 3770 3771 3772 3773 3774 3775 3776 3777 3778 3779 3780 3781 3782 3783 3784 3785 3786 3787 3788 3789 3790 3791 3792 3793 3794 3795 3796 3797 3798 3799 3800 3801 3802 3803 3804 3805 3806 3807 3808 3809 3810 3811 3812 3813 3814 3815 3816 3817 3818 3819 3820 3821 3822 3823 3824 3825 3826 3827 3828 3829 3830 3831 3832 3833 3834 3835 3836 3837 3838 3839 3840 3841 3842 3843 3844 3845 3846 3847 3848 3849 3850 3851 3852 3853 3854 3855 3856 3857 3858 3859 3860 3861 3862 3863 3864 3865 3866 3867 3868 3869 3870 3871 3872 3873 3874 3875 3876 3877 3878 3879 3880 3881 3882 3883 3884 3885 3886 3887 3888 3889 3890 3891 3892 3893 3894 3895 3896 3897 3898 3899 3900 3901 3902 3903 3904 3905 3906 3907 3908 3909 3910 3911 3912 3913 3914 3915 3916 3917 3918 3919 3920 3921 3922 3923 3924 3925 3926 3927 3928 3929 3930 3931 3932 3933 3934 3935 3936 3937 3938 3939 3940 3941 3942 3943 3944 3945 3946 3947 3948 3949 3950 3951 3952 3953 3954 3955 3956 3957 3958 3959 3960 3961 3962 3963 3964 3965 3966 3967 3968 3969 3970 3971 3972 3973 3974 3975 3976 3977 3978 3979 3980 3981 3982 3983 3984 3985 3986 3987 3988 3989 3990 3991 3992 3993 3994 3995 3996 3997 3998 3999 4000 4001 4002 4003 4004 4005 4006 4007 4008 4009 4010 4011 4012 4013 4014 4015 4016 4017 4018 4019 4020 4021 4022 4023 4024 4025 4026 4027 4028 4029 4030 4031 4032 4033 4034 4035 4036 4037 4038 4039 4040 4041 4042 4043 4044 4045 4046 4047 4048 4049 4050 4051 4052 4053 4054 4055 4056 4057 4058 4059 4060 4061 4062 4063 4064 4065 4066 4067 4068 4069 4070 4071 4072 4073 4074 4075 4076 4077 4078 4079 4080 4081 4082 4083 4084 4085 4086 4087 4088 4089 4090 4091 4092 4093 4094 4095 4096 4097 4098 4099 4100 4101 4102 4103 4104 4105 4106 4107 4108 4109 4110 4111 4112 4113 4114 4115 4116 4117 4118 4119 4120 4121 4122 4123 4124 4125 4126 4127 4128 4129 4130 4131 4132 4133 4134 4135 4136 4137 4138 4139 4140 4141 4142 4143 4144 4145 4146 4147 4148 4149 4150 4151 4152 4153 4154 4155 4156 4157 4158 4159 4160 4161 4162 4163 4164 4165 4166 4167 4168 4169 4170 4171 4172 4173 4174 4175 4176 4177 4178 4179 4180 4181 4182 4183 4184 4185 4186 4187 4188 4189 4190 4191 4192 4193 4194 4195 4196 4197 4198 4199 4200 4201 4202 4203 4204 4205 4206 4207 4208 4209 4210 4211 4212 4213 4214 4215 4216 4217 4218 4219 4220 4221 4222 4223 4224 4225 4226 4227 4228 4229 4230 4231 4232 4233 4234 4235 4236 4237 4238 4239 4240 4241 4242 4243 4244 4245 4246 4247 4248 4249 4250 4251 4252 4253 4254 4255 4256 4257 4258 4259 4260 4261 4262 4263 4264 4265 4266 4267 4268 4269 4270 4271 4272 4273 4274 4275 4276 4277 4278 4279 4280 4281 4282 4283 4284 4285 4286 4287 4288 4289 4290 4291 4292 4293 4294 4295 4296 4297 4298 4299 4300 4301 4302 4303 4304 4305 4306 4307 4308 4309 4310 4311 4312 4313 4314 4315 4316 4317 4318 4319 4320 4321 4322 4323 4324 4325 4326 4327 4328 4329 4330 4331 4332 4333 4334 4335 4336 4337 4338 4339 4340 4341 4342 4343 4344 4345 4346 4347 4348 4349 4350 4351 4352 4353 4354 4355 4356 4357 4358 4359 4360 4361 4362 4363 4364 4365 4366 4367 4368 4369 4370 4371 4372 4373 4374 4375 4376 4377 4378 4379 4380 4381 4382 4383 4384 4385 4386 4387 4388 4389 4390 4391 4392 4393 4394 4395 4396 4397 4398 4399 4400 4401 4402 4403 4404 4405 4406 4407 4408 4409 4410 4411 4412 4413 4414 4415 4416 4417 4418 4419 4420 4421 4422 4423 4424 4425 4426 4427 4428 4429 4430 4431 4432 4433 4434 4435 4436 4437 4438 4439 4440 4441 4442 4443 4444 4445 4446 4447 4448 4449 4450 4451 4452 4453 4454 4455 4456 4457 4458 4459 4460 4461 4462 4463 4464 4465 4466 4467 4468 4469 4470 4471 4472 4473 4474 4475 4476 4477 4478 4479 4480 4481 4482 4483 4484 4485 4486 4487 4488 4489 4490 4491 4492 4493 4494 4495 4496 4497 4498 4499 4500 4501 4502 4503 4504 4505 4506 4507 4508 4509 4510 4511 4512 4513 4514 4515 4516 4517 4518 4519 4520 4521 4522 4523 4524 4525 4526 4527 4528 4529 4530 4531 4532 4533 4534 4535 4536 4537 4538 4539 4540 4541 4542 4543 4544 4545 4546 4547 4548 4549 4550 4551 4552 4553 4554 4555 4556 4557 4558 4559 4560 4561 4562 4563 4564 4565 4566 4567 4568 4569 4570 4571 4572 4573 4574 4575 4576 4577 4578 4579 4580 4581 4582 4583 4584 4585 4586 4587 4588 4589 4590 4591 4592 4593 4594 4595 4596 4597 4598 4599 4600 4601 4602 4603 4604 4605 4606 4607 4608 4609 4610 4611 4612 4613 4614 4615 4616 4617 4618 4619 4620 4621 4622 4623 4624 4625 4626 4627 4628 4629 4630 4631 4632 4633 4634 4635 4636 4637 4638 4639 4640 4641 4642 4643 4644 4645 4646 4647 4648 4649 4650 4651 4652 4653 4654 4655 4656 4657 4658 4659 4660 4661 4662 4663 4664 4665 4666 4667 4668 4669 4670 4671 4672 4673 4674 4675 4676 4677 4678 4679 4680 4681 4682 4683 4684 4685 4686 4687 4688 4689 4690 4691 4692 4693 4694 4695 4696 4697 4698 4699 4700 4701 4702 4703 4704 4705 4706 4707 4708 4709 4710 4711 4712 4713 4714 4715 4716 4717 4718 4719 4720 4721 4722 4723 4724 4725 4726 4727 4728 4729 4730 4731 4732 4733 4734 4735 4736 4737 4738 4739 4740 4741 4742 4743 4744 4745 4746 4747 4748 4749 4750 4751 4752 4753 4754 4755 4756 4757 4758 4759 4760 4761 4762 4763 4764 4765 4766 4767 4768 4769 4770 4771 4772 4773 4774 4775 4776 4777 4778 4779 4780 4781 4782 4783 4784 4785 4786 4787 4788 4789 4790 4791 4792 4793 4794 4795 4796 4797 4798 4799 4800 4801 4802 4803 4804 4805 4806 4807 4808 4809 4810 4811 4812 4813 4814 4815 4816 4817 4818 4819 4820 4821 4822 4823 4824 4825 4826 4827 4828 4829 4830 4831 4832 4833 4834 4835 4836 4837 4838 4839 4840 4841 4842 4843 4844 4845 4846 4847 4848 4849 4850 4851 4852 4853 4854 4855 4856 4857 4858 4859 4860 4861 4862 4863 4864 4865 4866 4867 4868 4869 4870 4871 4872 4873 4874 4875 4876 4877 4878 4879 4880 4881 4882 4883 4884 4885 4886 4887 4888 4889 4890 4891 4892 4893 4894 4895 4896 4897 4898 4899 4900 4901 4902 4903 4904 4905 4906 4907 4908 4909 4910 4911 4912 4913 4914 4915 4916 4917 4918 4919 4920 4921 4922 4923 4924 4925 4926 4927 4928 4929 4930 4931 4932 4933 4934 4935 4936 4937 4938 4939 4940 4941 4942 4943 4944 4945 4946 4947 4948 4949 4950 4951 4952 4953 4954 4955 4956 4957 4958 4959 4960 4961 4962 4963 4964 4965 4966 4967 4968 4969 4970 4971 4972 4973 4974 4975 4976 4977 4978 4979 4980 4981 4982 4983 4984 4985 4986 4987 4988 4989 4990 4991 4992 4993 4994 4995 4996 4997 4998 4999 5000 5001 5002 5003 5004 5005 5006 5007 5008 5009 5010 5011 5012 5013 5014 5015 5016 5017 5018 5019 5020 5021 5022 5023 5024 5025 5026 5027 5028 5029 5030 5031 5032 5033 5034 5035 5036 5037 5038 5039 5040 5041 5042 5043 5044 5045 5046 5047 5048 5049 5050 5051 5052 5053 5054 5055 5056 5057 5058 5059 5060 5061 5062 5063 5064 5065 5066 5067 5068 5069 5070 5071 5072 5073 5074 5075 5076 5077 5078 5079 5080 5081 5082 5083 5084 5085 5086 5087 5088 5089 5090 5091 5092 5093 5094 5095 5096 5097 5098 5099 5100 5101 5102 5103 5104 5105 5106 5107 5108 5109 5110 5111 5112 5113 5114 5115 5116 5117 5118 5119 5120 5121 5122 5123 5124 5125 5126 5127 5128 5129 5130 5131 5132 5133 5134 5135 5136 5137 5138 5139 5140 5141 5142 5143 5144 5145 5146 5147 5148 5149 5150 5151 5152 5153 5154 5155 5156 5157 5158 5159 5160 5161 5162 5163 5164 5165 5166 5167 5168 5169 5170 5171 5172 5173 5174 5175 5176 5177 5178 5179 5180 5181 5182 5183 5184 5185 5186 5187 5188 5189 5190 5191 5192 5193 5194 5195 5196 5197 5198 5199 5200 5201 5202 5203 5204 5205 5206 5207 5208 5209 5210 5211 5212 5213 5214 5215 5216 5217 5218 5219 5220 5221 5222 5223 5224 5225 5226 5227 5228 5229 5230 5231 5232 5233 5234 5235 5236 5237 5238 5239 5240 5241 5242 5243 5244 5245 5246 5247 5248 5249 5250 5251 5252 5253 5254 5255 5256 5257 5258 5259 5260 5261 5262 5263 5264 5265 5266 5267 5268 5269 5270 5271 5272 5273 5274 5275 5276 5277 5278 5279 5280 5281 5282 5283 5284 5285 5286 5287 5288 5289 5290 5291 5292 5293 5294 5295 5296 5297 5298 5299 5300 5301 5302 5303 5304 5305 5306 5307 5308 5309 5310 5311 5312 5313 5314 5315 5316 5317 5318 5319 5320 5321 5322 5323 5324 5325 5326 5327 5328 5329 5330 5331 5332 5333 5334 5335 5336 5337 5338 5339 5340 5341 5342 5343 5344 5345 5346 5347 5348 5349 5350 5351 5352 5353 5354 5355 5356 5357 5358 5359 5360 5361 5362 5363 5364 5365 5366 5367 5368 5369 5370 5371 5372 5373 5374 5375 5376 5377 5378 5379 5380 5381 5382 5383 5384 5385 5386 5387 5388 5389 5390 5391 5392 5393 5394 5395 5396 5397 5398 5399 5400 5401 5402 5403 5404 5405 5406 5407 5408 5409 5410 5411 5412 5413 5414 5415 5416 5417 5418 5419 5420 5421 5422 5423 5424 5425 5426 5427 5428 5429 5430 5431 5432 5433 5434 5435 5436 5437 5438 5439 5440 5441 5442 5443 5444 5445 5446 5447 5448 5449 5450 5451 5452 5453 5454 5455 5456 5457 5458 5459 5460 5461 5462 5463 5464 5465 5466 5467 5468 5469 5470 5471 5472 5473 5474 5475 5476 5477 5478 5479 5480 5481 5482 5483 5484 5485 5486 5487 5488 5489 5490 5491 5492 5493 5494 5495 5496 5497 5498 5499 5500 5501 5502 5503 5504 5505 5506 5507 5508 5509 5510 5511 5512 5513 5514 5515 5516 5517 5518 5519 5520 5521 5522 5523 5524 5525 5526 5527 5528 5529 5530 5531 5532 5533 5534 5535 5536 5537 5538 5539 5540 5541 5542 5543 5544 5545 5546 5547 5548 5549 5550 5551 5552 5553 5554 5555 5556 5557 5558 5559 5560 5561 5562 5563 5564 5565 5566 5567 5568 5569 5570 5571 5572 5573 5574 5575 5576 5577 5578 5579 5580 5581 5582 5583 5584 5585 5586 5587 5588 5589 5590 5591 5592 5593 5594 5595 5596 5597 5598 5599 5600 5601 5602 5603 5604 5605 5606 5607 5608 5609 5610 5611 5612 5613 5614 5615 5616 5617 5618 5619 5620 5621 5622 5623 5624 5625 5626 5627 5628 5629 5630 5631 5632 5633 5634 5635 5636 5637 5638 5639 5640 5641 5642 5643 5644 5645 5646 5647 5648 5649 5650 5651 5652 5653 5654 5655 5656 5657 5658 5659 5660 5661 5662 5663 5664 5665 5666 5667 5668 5669 5670 5671 5672 5673 5674 5675 5676 5677 5678 5679 5680 5681 5682 5683 5684 5685 5686 5687 5688 5689 5690 5691 5692 5693 5694 5695 5696 5697 5698 5699 5700 5701 5702 5703 5704 5705 5706 5707 5708 5709 5710 5711 5712 5713 5714 5715 5716 5717 5718 5719 5720 5721 5722 5723 5724 5725 5726 5727 5728 5729 5730 5731 5732 5733 5734 5735 5736 5737 5738 5739 5740 5741 5742 5743 5744 5745 5746 5747 5748 5749 5750 5751 5752 5753 5754 5755 5756 5757 5758 5759 5760 5761 5762 5763 5764 5765 5766 5767 5768 5769 5770 5771 5772 5773 5774 5775 5776 5777 5778 5779 5780 5781 5782 5783 5784 5785 5786 5787 5788 5789 5790 5791 5792 5793 5794 5795 5796 5797 5798 5799 5800 5801 5802 5803 5804 5805 5806 5807 5808 5809 5810 5811 5812 5813 5814 5815 5816 5817 5818 5819 5820 5821 5822 5823 5824 5825 5826 5827 5828 5829 5830 5831 5832 5833 5834 5835 5836 5837 5838 5839 5840 5841 5842 5843 5844 5845 5846 5847 5848 5849 5850 5851 5852 5853 5854 5855 5856 5857 5858 5859 5860 5861 5862 5863 5864 5865 5866 5867 5868 5869 5870 5871 5872 5873 5874 5875 5876 5877 5878 5879 5880 5881 5882 5883 5884 5885 5886 5887 5888 5889 5890 5891 5892 5893 5894 5895 5896 5897 5898 5899 5900 5901 5902 5903 5904 5905 5906 5907 5908 5909 5910 5911 5912 5913 5914 5915 5916 5917 5918 5919 5920 5921 5922 5923 5924 5925 5926 5927 5928 5929 5930 5931 5932 5933 5934 5935 5936 5937 5938 5939 5940 5941 5942 5943 5944 5945 5946 5947 5948 5949 5950 5951 5952 5953 5954 5955 5956 5957 5958 5959 5960 5961 5962 5963 5964 5965 5966 5967 5968 5969 5970 5971 5972 5973 5974 5975 5976 5977 5978 5979 5980 5981 5982 5983 5984 5985 5986 5987 5988 5989 5990 5991 5992 5993 5994 5995 5996 5997 5998 5999 6000 6001 6002 6003 6004 6005 6006 6007 6008 6009 6010 6011 6012 6013 6014 6015 6016 6017 6018 6019 6020 6021 6022 6023 6024 6025 6026 6027 6028 6029 6030 6031 6032 6033 6034 6035 6036 6037 6038 6039 6040 6041 6042 6043 6044 6045 6046 6047 6048 6049 6050 6051 6052 6053 6054 6055 6056 6057 6058 6059 6060 6061 6062 6063 6064 6065 6066 6067 6068 6069 6070 6071 6072 6073 6074 6075 6076 6077 6078 6079 6080 6081 6082 6083 6084 6085 6086 6087 6088 6089 6090 6091 6092 6093 6094 6095 6096 6097 6098 6099 6100 6101 6102 6103 6104 6105 6106 6107 6108 6109 6110 6111 6112 6113 6114 6115 6116 6117 6118 6119 6120 6121 6122 6123 6124 6125 6126 6127 6128 6129 6130 6131 6132 6133 6134 6135 6136 6137 6138 6139 6140 6141 6142 6143 6144 6145 6146 6147 6148 6149 6150 6151 6152 6153 6154 6155 6156 6157 6158 6159 6160 6161 6162 6163 6164 6165 6166 6167 6168 6169 6170 6171 6172 6173 6174 6175 6176 6177 6178 6179 6180 6181 6182 6183 6184 6185 6186 6187 6188 6189 6190 6191 6192 6193 6194 6195 6196 6197 6198 6199 6200 6201 6202 6203 6204 6205 6206 6207 6208 6209 6210 6211 6212 6213 6214 6215 6216 6217 6218 6219 6220 6221 6222 6223 6224 6225 6226 6227 6228 6229 6230 6231 6232 6233 6234 6235 6236 6237 6238 6239 6240 6241 6242 6243 6244 6245 6246 6247 6248 6249 6250 6251 6252 6253 6254 6255 6256 6257 6258 6259 6260 6261 6262 6263 6264 6265 6266 6267 6268 6269 6270 6271 6272 6273 6274 6275 6276 6277 6278 6279 6280 6281 6282 6283 6284 6285 6286 6287 6288 6289 6290 6291 6292 6293 6294 6295 6296 6297 6298 6299 6300 6301 6302 6303 6304 6305 6306 6307 6308 6309 6310 6311 6312 6313 6314 6315 6316 6317 6318 6319 6320 6321 6322 6323 6324 6325 6326 6327 6328 6329 6330 6331 6332 6333 6334 6335 6336 6337 6338 6339 6340 6341 6342 6343 6344 6345 6346 6347 6348 6349 6350 6351 6352 6353 6354 6355 6356 6357 6358 6359 6360 6361 6362 6363 6364 6365 6366 6367 6368 6369 6370 6371 6372 6373 6374 6375 6376 6377 6378 6379 6380 6381 6382 6383 6384 6385 6386 6387 6388 6389 6390 6391 6392 6393 6394 6395 6396 6397 6398 6399 6400 6401 6402 6403 6404 6405 6406 6407 6408 6409 6410 6411 6412 6413 6414 6415 6416 6417 6418 6419 6420 6421 6422 6423 6424 6425 6426 6427 6428 6429 6430 6431 6432 6433 6434 6435 6436 6437 6438 6439 6440 6441 6442 6443 6444 6445 6446 6447 6448 6449 6450 6451 6452 6453 6454 6455 6456 6457 6458 6459 6460 6461 6462 6463 6464 6465 6466 6467 6468 6469 6470 6471 6472 6473 6474 6475 6476 6477 6478 6479 6480 6481 6482 6483 6484 6485 6486 6487 6488 6489 6490 6491 6492 6493 6494 6495 6496 6497 6498 6499 6500 6501 6502 6503 6504 6505 6506 6507 6508 6509 6510 6511 6512 6513 6514 6515 6516 6517 6518 6519 6520 6521 6522 6523 6524 6525 6526 6527 6528 6529 6530 6531 6532 6533 6534 6535 6536 6537 6538 6539 6540 6541 6542 6543 6544 6545 6546 6547 6548 6549 6550 6551 6552 6553 6554 6555 6556 6557 6558 6559 6560 6561 6562 6563 6564 6565 6566 6567 6568 6569 6570 6571 6572 6573 6574 6575 6576 6577 6578 6579 6580 6581 6582 6583 6584 6585 6586 6587 6588 6589 6590 6591 6592 6593 6594 6595 6596 6597 6598 6599 6600 6601 6602 6603 6604 6605 6606 6607 6608 6609 6610 6611 6612 6613 6614 6615 6616 6617 6618 6619 6620 6621 6622 6623 6624 6625 6626 6627 6628 6629 6630 6631 6632 6633 6634 6635 6636 6637 6638 6639 6640 6641 6642 6643 6644 6645 6646 6647 6648 6649 6650 6651 6652 6653 6654 6655 6656 6657 6658 6659 6660 6661 6662 6663 6664 6665 6666 6667 6668 6669 6670 6671 6672 6673 6674 6675 6676 6677 6678 6679 6680 6681 6682 6683 6684 6685 6686 6687 6688 6689 6690 6691 6692 6693 6694 6695 6696 6697 6698 6699 6700 6701 6702 6703 6704 6705 6706 6707 6708 6709 6710 6711 6712 6713 6714 6715 6716 6717 6718 6719 6720 6721 6722 6723 6724 6725 6726 6727 6728 6729 6730 6731 6732 6733 6734 6735 6736 6737 6738 6739 6740 6741 6742 6743 6744 6745 6746 6747 6748 6749 6750 6751 6752 6753 6754 6755 6756 6757 6758 6759 6760 6761 6762 6763 6764 6765 6766 6767 6768 6769 6770 6771 6772 6773 6774 6775 6776 6777 6778 6779 6780 6781 6782 6783 6784 6785 6786 6787 6788 6789 6790 6791 6792 6793 6794 6795 6796 6797 6798 6799 6800 6801 6802 6803 6804 6805 6806 6807 6808 6809 6810 6811 6812 6813 6814 6815 6816 6817 6818 6819 6820 6821 6822 6823 6824 6825 6826 6827 6828 6829 6830 6831 6832 6833 6834 6835 6836 6837 6838 6839 6840 6841 6842 6843 6844 6845 6846 6847 6848 6849 6850 6851 6852 6853 6854 6855 6856 6857 6858 6859 6860 6861 6862 6863 6864 6865 6866 6867 6868 6869 6870 6871 6872 6873 6874 6875 6876 6877 6878 6879 6880 6881 6882 6883 6884 6885 6886 6887 6888 6889 6890 6891 6892 6893 6894 6895 6896 6897 6898 6899 6900 6901 6902 6903 6904 6905 6906 6907 6908 6909 6910 6911 6912 6913 6914 6915 6916 6917 6918 6919 6920 6921 6922 6923 6924 6925 6926 6927 6928 6929 6930 6931 6932 6933 6934 6935 6936 6937 6938 6939 6940 6941 6942 6943 6944 6945 6946 6947 6948 6949 6950 6951 6952 6953 6954 6955 6956 6957 6958 6959 6960 6961 6962 6963 6964 6965 6966 6967 6968 6969 6970 6971 6972 6973 6974 6975 6976 6977 6978 6979 6980 6981 6982 6983 6984 6985 6986 6987 6988 6989 6990 6991 6992 6993 6994 6995 6996 6997 6998 6999 7000 7001 7002 7003 7004 7005 7006 7007 7008 7009 7010 7011 7012 7013 7014 7015 7016 7017 7018 7019 7020 7021 7022 7023 7024 7025 7026 7027 7028 7029 7030 7031 7032 7033 7034 7035 7036 7037 7038 7039 7040 7041 7042 7043 7044 7045 7046 7047 7048 7049 7050 7051 7052 7053 7054 7055 7056 7057 7058 7059 7060 7061 7062 7063 7064 7065 7066 7067 7068 7069 7070 7071 7072 7073 7074 7075 7076 7077 7078 7079 7080 7081 7082 7083 7084 7085 7086 7087 7088 7089 7090 7091 7092 7093 7094 7095 7096 7097 7098 7099 7100 7101 7102 7103 7104 7105 7106 7107 7108 7109 7110 7111 7112 7113 7114 7115 7116 7117 7118 7119 7120 7121 7122 7123 7124 7125 7126 7127 7128 7129 7130 7131 7132 7133 7134 7135 7136 7137 7138 7139 7140 7141 7142 7143 7144 7145 7146 7147 7148 7149 7150 7151 7152 7153 7154 7155 7156 7157 7158 7159 7160 7161 7162 7163 7164 7165 7166 7167 7168 7169 7170 7171 7172 7173 7174 7175 7176 7177 7178 7179 7180 7181 7182 7183 7184 7185 7186 7187 7188 7189 7190 7191 7192 7193 7194 7195 7196 7197 7198 7199 7200 7201 7202 7203 7204 7205 7206 7207 7208 7209 7210 7211 7212 7213 7214 7215 7216 7217 7218 7219 7220 7221 7222 7223 7224 7225 7226 7227 7228 7229 7230 7231 7232 7233 7234 7235 7236 7237 7238 7239 7240 7241 7242 7243 7244 7245 7246 7247 7248 7249 7250 7251 7252 7253 7254 7255 7256 7257 7258 7259 7260 7261 7262 7263 7264 7265 7266 7267 7268 7269 7270 7271 7272 7273 7274 7275 7276 7277 7278 7279 7280 7281 7282 7283 7284 7285 7286 7287 7288 7289 7290 7291 7292 7293 7294 7295 7296 7297 7298 7299 7300 7301 7302 7303 7304 7305 7306 7307 7308 7309 7310 7311 7312 7313 7314 7315 7316 7317 7318 7319 7320 7321 7322 7323 7324 7325 7326 7327 7328 7329 7330 7331 7332 7333 7334 7335 7336 7337 7338 7339 7340 7341 7342 7343 7344 7345 7346 7347 7348 7349 7350 7351 7352 7353 7354 7355 7356 7357 7358 7359 7360 7361 7362 7363 7364 7365 7366 7367 7368 7369 7370 7371 7372 7373 7374 7375 7376 7377 7378 7379 7380 7381 7382 7383 7384 7385 7386 7387 7388 7389 7390 7391 7392 7393 7394 7395 7396 7397 7398 7399 7400 7401 7402 7403 7404 7405 7406 7407 7408 7409 7410 7411 7412 7413 7414 7415 7416 7417 7418 7419 7420 7421 7422 7423 7424 7425 7426 7427 7428 7429 7430 7431 7432 7433 7434 7435 7436 7437 7438 7439 7440 7441 7442 7443 7444 7445 7446 7447 7448 7449 7450 7451 7452 7453 7454 7455 7456 7457 7458 7459 7460 7461 7462 7463 7464 7465 7466 7467 7468 7469 7470 7471 7472 7473 7474 7475 7476 7477 7478 7479 7480 7481 7482 7483 7484 7485 7486 7487 7488 7489 7490 7491 7492 7493 7494 7495 7496 7497 7498 7499 7500 7501 7502 7503 7504 7505 7506 7507 7508 7509 7510 7511 7512 7513 7514 7515 7516 7517 7518 7519 7520 7521 7522 7523 7524 7525 7526 7527 7528 7529 7530 7531 7532 7533 7534 7535 7536 7537 7538 7539 7540 7541 7542 7543 7544 7545 7546 7547 7548 7549 7550 7551 7552 7553 7554 7555 7556 7557 7558 7559 7560 7561 7562 7563 7564 7565 7566 7567 7568 7569 7570 7571 7572 7573 7574 7575 7576 7577 7578 7579 7580 7581 7582 7583 7584 7585 7586 7587 7588 7589 7590 7591 7592 7593 7594 7595 7596 7597 7598 7599 7600 7601 7602 7603 7604 7605 7606 7607 7608 7609 7610 7611 7612 7613 7614 7615 7616 7617 7618 7619 7620 7621 7622 7623 7624 7625 7626 7627 7628 7629 7630 7631 7632 7633 7634 7635 7636 7637 7638 7639 7640 7641 7642 7643 7644 7645 7646 7647 7648 7649 7650 7651 7652 7653 7654 7655 7656 7657 7658 7659 7660 7661 7662 7663 7664 7665 7666 7667 7668 7669 7670 7671 7672 7673 7674 7675 7676 7677 7678 7679 7680 7681 7682 7683 7684 7685 7686 7687 7688 7689 7690 7691 7692 7693 7694 7695 7696 7697 7698 7699 7700 7701 7702 7703 7704 7705 7706 7707 7708 7709 7710 7711 7712 7713 7714 7715 7716 7717 7718 7719 7720 7721 7722 7723 7724 7725 7726 7727 7728 7729 7730 7731 7732 7733 7734 7735 7736 7737 7738 7739 7740 7741 7742 7743 7744 7745 7746 7747 7748 7749 7750 7751 7752 7753 7754 7755 7756 7757 7758 7759 7760 7761 7762 7763 7764 7765 7766 7767 7768 7769 7770 7771 7772 7773 7774 7775 7776 7777 7778 7779 7780 7781 7782 7783 7784 7785 7786 7787 7788 7789 7790 7791 7792 7793 7794 7795 7796 7797 7798 7799 7800 7801 7802 7803 7804 7805 7806 7807 7808 7809 7810 7811 7812 7813 7814 7815 7816 7817 7818 7819 7820 7821 7822 7823 7824 7825 7826 7827 7828 7829 7830 7831 7832 7833 7834 7835 7836 7837 7838 7839 7840 7841 7842 7843 7844 7845 7846 7847 7848 7849 7850 7851 7852 7853 7854 7855 7856 7857 7858 7859 7860 7861 7862 7863 7864 7865 7866 7867 7868 7869 7870 7871 7872 7873 7874 7875 7876 7877 7878 7879 7880 7881 7882 7883 7884 7885 7886 7887 7888 7889 7890 7891 7892 7893 7894 7895 7896 7897 7898 7899 7900 7901 7902 7903 7904 7905 7906 7907 7908 7909 7910 7911 7912 7913 7914 7915 7916 7917 7918 7919 7920 7921 7922 7923 7924 7925 7926 7927 7928 7929 7930 7931 7932 7933 7934 7935 7936 7937 7938 7939 7940 7941 7942 7943 7944 7945 7946 7947 7948 7949 7950 7951 7952 7953 7954 7955 7956 7957 7958 7959 7960 7961 7962 7963 7964 7965 7966 7967 7968 7969 7970 7971 7972 7973 7974 7975 7976 7977 7978 7979 7980 7981 7982 7983 7984 7985 7986 7987 7988 7989 7990 7991 7992 7993 7994 7995 7996 7997 7998 7999 8000 8001 8002 8003 8004 8005 8006 8007 8008 8009 8010 8011 8012 8013 8014 8015 8016 8017 8018 8019 8020 8021 8022 8023 8024 8025 8026 8027 8028 8029 8030 8031 8032 8033 8034 8035 8036 8037 8038 8039 8040 8041 8042 8043 8044 8045 8046 8047 8048 8049 8050 8051 8052 8053 8054 8055 8056 8057 8058 8059 8060 8061 8062 8063 8064 8065 8066 8067 8068 8069 8070 8071 8072 8073 8074 8075 8076 8077 8078 8079 8080 8081 8082 8083 8084 8085 8086 8087 8088 8089 8090 8091 8092 8093 8094 8095 8096 8097 8098 8099 8100 8101 8102 8103 8104 8105 8106 8107 8108 8109 8110 8111 8112 8113 8114 8115 8116 8117 8118 8119 8120 8121 8122 8123 8124 8125 8126 8127 8128 8129 8130 8131 8132 8133 8134 8135 8136 8137 8138 8139 8140 8141 8142 8143 8144 8145 8146 8147 8148 8149 8150 8151 8152 8153 8154 8155 8156 8157 8158 8159 8160 8161 8162 8163 8164 8165 8166 8167 8168 8169 8170 8171 8172 8173 8174 8175 8176 8177 8178 8179 8180 8181 8182 8183 8184 8185 8186 8187 8188 8189 8190 8191 8192 8193 8194 8195 8196 8197 8198 8199 8200 8201 8202 8203 8204 8205 8206 8207 8208 8209 8210 8211 8212 8213 8214 8215 8216 8217 8218 8219 8220 8221 8222 8223 8224 8225 8226 8227 8228 8229 8230 8231 8232 8233 8234 8235 8236 8237 8238 8239 8240 8241 8242 8243 8244 8245 8246 8247 8248 8249 8250 8251 8252 8253 8254 8255 8256 8257 8258 8259 8260 8261 8262 8263 8264 8265 8266 8267 8268 8269 8270 8271 8272 8273 8274 8275 8276 8277 8278 8279 8280 8281 8282 8283 8284 8285 8286 8287 8288 8289 8290 8291 8292 8293 8294 8295 8296 8297 8298 8299 8300 8301 8302 8303 8304 8305 8306 8307 8308 8309 8310 8311 8312 8313 8314 8315 8316 8317 8318 8319 8320 8321 8322 8323 8324 8325 8326 8327 8328 8329 8330 8331 8332 8333 8334 8335 8336 8337 8338 8339 8340 8341 8342 8343 8344 8345 8346 8347 8348 8349 8350 8351 8352 8353 8354 8355 8356 8357 8358 8359 8360 8361 8362 8363 8364 8365 8366 8367 8368 8369 8370 8371 8372 8373 8374 8375 8376 8377 8378 8379 8380 8381 8382 8383 8384 8385 8386 8387 8388 8389 8390 8391 8392 8393 8394 8395 8396 8397 8398 8399 8400 8401 8402 8403 8404 8405 8406 8407 8408 8409 8410 8411 8412 8413 8414 8415 8416 8417 8418 8419 8420 8421 8422 8423 8424 8425 8426 8427 8428 8429 8430 8431 8432 8433 8434 8435 8436 8437 8438 8439 8440 8441 8442 8443 8444 8445 8446 8447 8448 8449 8450 8451 8452 8453 8454 8455 8456 8457 8458 8459 8460 8461 8462 8463 8464 8465 8466 8467 8468 8469 8470 8471 8472 8473 8474 8475 8476 8477 8478 8479 8480 8481 8482 8483 8484 8485 8486 8487 8488 8489 8490 8491 8492 8493 8494 8495 8496 8497 8498 8499 8500 8501 8502 8503 8504 8505 8506 8507 8508 8509 8510 8511 8512 8513 8514 8515 8516 8517 8518 8519 8520 8521 8522 8523 8524 8525 8526 8527 8528 8529 8530 8531 8532 8533 8534 8535 8536 8537 8538 8539 8540 8541 8542 8543 8544 8545 8546 8547 8548 8549 8550 8551 8552 8553 8554 8555 8556 8557 8558 8559 8560 8561 8562 8563 8564 8565 8566 8567 8568 8569 8570 8571 8572 8573 8574 8575 8576 8577 8578 8579 8580 8581 8582 8583 8584 8585 8586 8587 8588 8589 8590 8591 8592 8593 8594 8595 8596 8597 8598 8599 8600 8601 8602 8603 8604 8605 8606 8607 8608 8609 8610 8611 8612 8613 8614 8615 8616 8617 8618 8619 8620 8621 8622 8623 8624 8625 8626 8627 8628 8629 8630 8631 8632 8633 8634 8635 8636 8637 8638 8639 8640 8641 8642 8643 8644 8645 8646 8647 8648 8649 8650 8651 8652 8653 8654 8655 8656 8657 8658 8659 8660 8661 8662 8663 8664 8665 8666 8667 8668 8669 8670 8671 8672 8673 8674 8675 8676 8677 8678 8679 8680 8681 8682 8683 8684 8685 8686 8687 8688 8689 8690 8691 8692 8693 8694 8695 8696 8697 8698 8699 8700 8701 8702 8703 8704 8705 8706 8707 8708 8709 8710 8711 8712 8713 8714 8715 8716 8717 8718 8719 8720 8721 8722 8723 8724 8725 8726 8727 8728 8729 8730 8731 8732 8733 8734 8735 8736 8737 8738 8739 8740 8741 8742 8743 8744 8745 8746 8747 8748 8749 8750 8751 8752 8753 8754 8755 8756 8757 8758 8759 8760 8761 8762 8763 8764 8765 8766 8767 8768 8769 8770 8771 8772 8773 8774 8775 8776 8777 8778 8779 8780 8781 8782 8783 8784 8785 8786 8787 8788 8789 8790 8791 8792 8793 8794 8795 8796 8797 8798 8799 8800 8801 8802 8803 8804 8805 8806 8807 8808 8809 8810 8811 8812 8813 8814 8815 8816 8817 8818 8819 8820 8821 8822 8823 8824 8825 8826 8827 8828 8829 8830 8831 8832 8833 8834 8835 8836 8837 8838 8839 8840 8841 8842 8843 8844 8845 8846 8847 8848 8849 8850 8851 8852 8853 8854 8855 8856 8857 8858 8859 8860 8861 8862 8863 8864 8865 8866 8867 8868 8869 8870 8871 8872 8873 8874 8875 8876 8877 8878 8879 8880 8881 8882 8883 8884 8885 8886 8887 8888 8889 8890 8891 8892 8893 8894 8895 8896 8897 8898 8899 8900 8901 8902 8903 8904 8905 8906 8907 8908 8909 8910 8911 8912 8913 8914 8915 8916 8917 8918 8919 8920 8921 8922 8923 8924 8925 8926 8927 8928 8929 8930 8931 8932 8933 8934 8935 8936 8937 8938 8939 8940 8941 8942 8943 8944 8945 8946 8947 8948 8949 8950 8951 8952 8953 8954 8955 8956 8957 8958 8959 8960 8961 8962 8963 8964 8965 8966 8967 8968 8969 8970 8971 8972 8973 8974 8975 8976 8977 8978 8979 8980 8981 8982 8983 8984 8985 8986 8987 8988 8989 8990 8991 8992 8993 8994 8995 8996 8997 8998 8999 9000 9001 9002 9003 9004 9005 9006 9007 9008 9009 9010 9011 9012 9013 9014 9015 9016 9017 9018 9019 9020 9021 9022 9023 9024 9025 9026 9027 9028 9029 9030 9031 9032 9033 9034 9035 9036 9037 9038 9039 9040 9041 9042 9043 9044 9045 9046 9047 9048 9049 9050 9051 9052 9053 9054 9055 9056 9057 9058 9059 9060 9061 9062 9063 9064 9065 9066 9067 9068 9069 9070 9071 9072 9073 9074 9075 9076 9077 9078 9079 9080 9081 9082 9083 9084 9085 9086 9087 9088 9089 9090 9091 9092 9093 9094 9095 9096 9097 9098 9099 9100 9101 9102 9103 9104 9105 9106 9107 9108 9109 9110 9111 9112 9113 9114 9115 9116 9117 9118 9119 9120 9121 9122 9123 9124 9125 9126 9127 9128 9129 9130 9131 9132 9133 9134 9135 9136 9137 9138 9139 9140 9141 9142 9143 9144 9145 9146 9147 9148 9149 9150 9151 9152 9153 9154 9155 9156 9157 9158 9159 9160 9161 9162 9163 9164 9165 9166 9167 9168 9169 9170 9171 9172 9173 9174 9175 9176 9177 9178 9179 9180 9181 9182 9183 9184 9185 9186 9187 9188 9189 9190 9191 9192 9193 9194 9195 9196 9197 9198 9199 9200 9201 9202 9203 9204 9205 9206 9207 9208 9209 9210 9211 9212 9213 9214 9215 9216 9217 9218 9219 9220 9221 9222 9223 9224 9225 9226 9227 9228 9229 9230 9231 9232 9233 9234 9235 9236 9237 9238 9239 9240 9241 9242 9243 9244 9245 9246 9247 9248 9249 9250 9251 9252 9253 9254 9255 9256 9257 9258 9259 9260 9261 9262 9263 9264 9265 9266 9267 9268 9269 9270 9271 9272 9273 9274 9275 9276 9277 9278 9279 9280 9281 9282 9283 9284 9285 9286 9287 9288 9289 9290 9291 9292 9293 9294 9295 9296 9297 9298 9299 9300 9301 9302 9303 9304 9305 9306 9307 9308 9309 9310 9311 9312 9313 9314 9315 9316 9317 9318 9319 9320 9321 9322 9323 9324 9325 9326 9327 9328 9329 9330 9331 9332 9333 9334 9335 9336 9337 9338 9339 9340 9341 9342 9343 9344 9345 9346 9347 9348 9349 9350 9351 9352 9353 9354 9355 9356 9357 9358 9359 9360 9361 9362 9363 9364 9365 9366 9367 9368 9369 9370 9371 9372 9373 9374 9375 9376 9377 9378 9379 9380 9381 9382 9383 9384 9385 9386 9387 9388 9389 9390 9391 9392 9393 9394 9395 9396 9397 9398 9399 9400 9401 9402 9403 9404 9405 9406 9407 9408 9409 9410 9411 9412 9413 9414 9415 9416 9417 9418 9419 9420 9421 9422 9423 9424 9425 9426 9427 9428 9429 9430 9431 9432 9433 9434 9435 9436 9437 9438 9439 9440 9441 9442 9443 9444 9445 9446 9447 9448 9449 9450 9451 9452 9453 9454 9455 9456 9457 9458 9459 9460 9461 9462 9463 9464 9465 9466 9467 9468 9469 9470 9471 9472 9473 9474 9475 9476 9477 9478 9479 9480 9481 9482 9483 9484 9485 9486 9487 9488 9489 9490 9491 9492 9493 9494 9495 9496 9497 9498 9499 9500 9501 9502 9503 9504 9505 9506 9507 9508 9509 9510 9511 9512 9513 9514 9515 9516 9517 9518 9519 9520 9521 9522 9523 9524 9525 9526 9527 9528 9529 9530 9531 9532 9533 9534 9535 9536 9537 9538 9539 9540 9541 9542 9543 9544 9545 9546 9547 9548 9549 9550 9551 9552 9553 9554 9555 9556 9557 9558 9559 9560 9561 9562 9563 9564 9565 9566 9567 9568 9569 9570 9571 9572 9573 9574 9575 9576 9577 9578 9579 9580 9581 9582 9583 9584 9585 9586 9587 9588 9589 9590 9591 9592 9593 9594 9595 9596 9597 9598 9599 9600 9601 9602 9603 9604 9605 9606 9607 9608 9609 9610 9611 9612 9613 9614 9615 9616 9617 9618 9619 9620 9621 9622 9623 9624 9625 9626 9627 9628 9629 9630 9631 9632 9633 9634 9635 9636 9637 9638 9639 9640 9641 9642 9643 9644 9645 9646 9647 9648 9649 9650 9651 9652 9653 9654 9655 9656 9657 9658 9659 9660 9661 9662 9663 9664 9665 9666 9667 9668 9669 9670 9671 9672 9673 9674 9675 9676 9677 9678 9679 9680 9681 9682 9683 9684 9685 9686 9687 9688 9689 9690 9691 9692 9693 9694 9695 9696 9697 9698 9699 9700 9701 9702 9703 9704 9705 9706 9707 9708 9709 9710 9711 9712 9713 9714 9715 9716 9717 9718 9719 9720 9721 9722 9723 9724 9725 9726 9727 9728 9729 9730 9731 9732 9733 9734 9735 9736 9737 9738 9739 9740 9741 9742 9743 9744 9745 9746 9747 9748 9749 9750 9751 9752 9753 9754 9755 9756 9757 9758 9759 9760 9761 9762 9763 9764 9765 9766 9767 9768 9769 9770 9771 9772 9773 9774 9775 9776 9777 9778 9779 9780 9781 9782 9783 9784 9785 9786 9787 9788 9789 9790 9791 9792 9793 9794 9795 9796 9797 9798 9799 9800 9801 9802 9803 9804 9805 9806 9807 9808 9809 9810 9811 9812 9813 9814 9815 9816 9817 9818 9819 9820 9821 9822 9823 9824 9825 9826 9827 9828 9829 9830 9831 9832 9833 9834 9835 9836 9837 9838 9839 9840 9841 9842 9843 9844 9845 9846 9847 9848 9849 9850 9851 9852 9853 9854 9855 9856 9857 9858 9859 9860 9861 9862 9863 9864 9865 9866 9867 9868 9869 9870 9871 9872 9873 9874 9875 9876 9877 9878 9879 9880 9881 9882 9883 9884 9885 9886 9887 9888 9889 9890 9891 9892 9893 9894 9895 9896 9897 9898 9899 9900 9901 9902 9903 9904 9905 9906 9907 9908 9909 9910 9911 9912 9913 9914 9915 9916 9917 9918 9919 9920 9921 9922 9923 9924 9925 9926 9927 9928 9929 9930 9931 9932 9933 9934 9935 9936 9937 9938 9939 9940 9941 9942 9943 9944 9945 9946 9947 9948 9949 9950 9951 9952 9953 9954 9955 9956 9957 9958 9959 9960 9961 9962 9963 9964 9965 9966 9967 9968 9969 9970 9971 9972 9973 9974 9975 9976 9977 9978 9979 9980 9981 9982 9983 9984 9985 9986 9987 9988 9989 9990 9991 9992 9993 9994 9995 9996 9997 9998 9999 10000 10001 10002 10003 10004 10005 10006 10007 10008 10009 10010 10011 10012 10013 10014 10015 10016 10017 10018 10019 10020 10021 10022 10023 10024 10025 10026 10027 10028 10029 10030 10031 10032 10033 10034 10035 10036 10037 10038 10039 10040 10041 10042 10043 10044 10045 10046 10047 10048 10049 10050 10051 10052 10053 10054 10055 10056 10057 10058 10059 10060 10061 10062 10063 10064 10065 10066 10067 10068 10069 10070 10071 10072 10073 10074 10075 10076 10077 10078 10079 10080 10081 10082 10083 10084 10085 10086 10087 10088 10089 10090 10091 10092 10093 10094 10095 10096 10097 10098 10099 10100 10101 10102 10103 10104 10105 10106 10107 10108 10109 10110 10111 10112 10113 10114 10115 10116 10117 10118 10119 10120 10121 10122 10123 10124 10125 10126 10127 10128 10129 10130 10131 10132 10133 10134 10135 10136 10137 10138 10139 10140 10141 10142 10143 10144 10145 10146 10147 10148 10149 10150 10151 10152 10153 10154 10155 10156 10157 10158 10159 10160 10161 10162 10163 10164 10165 10166 10167 10168 10169 10170 10171 10172 10173 10174 10175 10176 10177 10178 10179 10180 10181 10182 10183 10184 10185 10186 10187 10188 10189 10190 10191 10192 10193 10194 10195 10196 10197 10198 10199 10200 10201 10202 10203 10204 10205 10206 10207 10208 10209 10210 10211 10212 10213 10214 10215 10216 10217 10218 10219 10220 10221 10222 10223 10224 10225 10226 10227 10228 10229 10230 10231 10232 10233 10234 10235 10236 10237 10238 10239 10240 10241 10242 10243 10244 10245 10246 10247 10248 10249 10250 10251 10252 10253 10254 10255 10256 10257 10258 10259 10260 10261 10262 10263 10264 10265 10266 10267 10268 10269 10270 10271 10272 10273 10274 10275 10276 10277 10278 10279 10280 10281 10282 10283 10284 10285 10286 10287 10288 10289 10290 10291 10292 10293 10294 10295 10296 10297 10298 10299 10300 10301 10302 10303 10304 10305 10306 10307 10308 10309 10310 10311 10312 10313 10314 10315 10316 10317 10318 10319 10320 10321 10322 10323 10324 10325 10326 10327 10328 10329 10330 10331 10332 10333 10334 10335 10336 10337 10338 10339 10340 10341 10342 10343 10344 10345 10346 10347 10348 10349 10350 10351 10352 10353 10354 10355 10356 10357 10358 10359 10360 10361 10362 10363 10364 10365 10366 10367 10368 10369 10370 10371 10372 10373 10374 10375 10376 10377 10378 10379 10380 10381 10382 10383 10384 10385 10386 10387 10388 10389 10390 10391 10392 10393 10394 10395 10396 10397 10398 10399 10400 10401 10402 10403 10404 10405 10406 10407 10408 10409 10410 10411 10412 10413 10414 10415 10416 10417 10418 10419 10420 10421 10422 10423 10424 10425 10426 10427 10428 10429 10430 10431 10432 10433 10434 10435 10436 10437 10438 10439 10440 10441 10442 10443 10444 10445 10446 10447 10448 10449 10450 10451 10452 10453 10454 10455 10456 10457 10458 10459 10460 10461 10462 10463 10464 10465 10466 10467 10468 10469 10470 10471 10472 10473 10474 10475 10476 10477 10478 10479 10480 10481 10482 10483 10484 10485 10486 10487 10488 10489 10490 10491 10492 10493 10494 10495 10496 10497 10498 10499 10500 10501 10502 10503 10504 10505 10506 10507 10508 10509 10510 10511 10512 10513 10514 10515 10516 10517 10518 10519 10520 10521 10522 10523 10524 10525 10526 10527 10528 10529 10530 10531 10532 10533 10534 10535 10536 10537 10538 10539 10540 10541 10542 10543 10544 10545 10546 10547 10548 10549 10550 10551 10552 10553 10554 10555 10556 10557 10558 10559 10560 10561 10562 10563 10564 10565 10566 10567 10568 10569 10570 10571 10572 10573 10574 10575 10576 10577 10578 10579 10580 10581 10582 10583 10584 10585 10586 10587 10588 10589 10590 10591 10592 10593 10594 10595 10596 10597 10598 10599 10600 10601 10602 10603 10604 10605 10606 10607 10608 10609 10610 10611 10612 10613 10614 10615 10616 10617 10618 10619 10620 10621 10622 10623 10624 10625 10626 10627 10628 10629 10630 10631 10632 10633 10634 10635 10636 10637 10638 10639 10640 10641 10642 10643 10644 10645 10646 10647 10648 10649 10650 10651 10652 10653 10654 10655 10656 10657 10658 10659 10660 10661 10662 10663 10664 10665 10666 10667 10668 10669 10670 10671 10672 10673 10674 10675 10676 10677 10678 10679 10680 10681 10682 10683 10684 10685 10686 10687 10688 10689 10690 10691 10692 10693 10694 10695 10696 10697 10698 10699 10700 10701 10702 10703 10704 10705 10706 10707 10708 10709 10710 10711 10712 10713 10714 10715 10716 10717 10718 10719 10720 10721 10722 10723 10724 10725 10726 10727 10728 10729 10730 10731 10732 10733 10734 10735 10736 10737 10738 10739 10740 10741 10742 10743 10744 10745 10746 10747 10748 10749 10750 10751 10752 10753 10754 10755 10756 10757 10758 10759 10760 10761 10762 10763 10764 10765 10766 10767 10768 10769 10770 10771 10772 10773 10774 10775 10776 10777 10778 10779 10780 10781 10782 10783 10784 10785 10786 10787 10788 10789 10790 10791 10792 10793 10794 10795 10796 10797 10798 10799 10800 10801 10802 10803 10804 10805 10806 10807 10808 10809 10810 10811 10812 10813 10814 10815 10816 10817 10818 10819 10820 10821 10822 10823 10824 10825 10826 10827 10828 10829 10830 10831 10832 10833 10834 10835 10836 10837 10838 10839 10840 10841 10842 10843 10844 10845 10846 10847 10848 10849 10850 10851 10852 10853 10854 10855 10856 10857 10858 10859 10860 10861 10862 10863 10864 10865 10866 10867 10868 10869 10870 10871 10872 10873 10874 10875 10876 10877 10878 10879 10880 10881 10882 10883 10884 10885 10886 10887 10888 10889 10890 10891 10892 10893 10894 10895 10896 10897 10898 10899 10900 10901 10902 10903 10904 10905 10906 10907 10908 10909 10910 10911 10912 10913 10914 10915 10916 10917 10918 10919 10920 10921 10922 10923 10924 10925 10926 10927 10928 10929 10930 10931 10932 10933 10934 10935 10936 10937 10938 10939 10940 10941 10942 10943 10944 10945 10946 10947 10948 10949 10950 10951 10952 10953 10954 10955 10956 10957 10958 10959 10960 10961 10962 10963 10964 10965 10966 10967 10968 10969 10970 10971 10972 10973 10974 10975 10976 10977 10978 10979 10980 10981 10982 10983 10984 10985 10986 10987 10988 10989 10990 10991 10992 10993 10994 10995 10996 10997 10998 10999 11000 11001 11002 11003 11004 11005 11006 11007 11008 11009 11010 11011 11012 11013 11014 11015 11016 11017 11018 11019 11020 11021 11022 11023 11024 11025 11026 11027 11028 11029 11030 11031 11032 11033 11034 11035 11036 11037 11038 11039 11040 11041 11042 11043 11044 11045 11046 11047 11048 11049 11050 11051 11052 11053 11054 11055 11056 11057 11058 11059 11060 11061 11062 11063 11064 11065 11066 11067 11068 11069 11070 11071 11072 11073 11074 11075 11076 11077 11078 11079 11080 11081 11082 11083 11084 11085 11086 11087 11088 11089 11090 11091 11092 11093 11094 11095 11096 11097 11098 11099 11100 11101 11102 11103 11104 11105 11106 11107 11108 11109 11110 11111 11112 11113 11114 11115 11116 11117 11118 11119 11120 11121 11122 11123 11124 11125 11126 11127 11128 11129 11130 11131 11132 11133 11134 11135 11136 11137 11138 11139 11140 11141 11142 11143 11144 11145 11146 11147 11148 11149 11150 11151 11152 11153 11154 11155 11156 11157 11158 11159 11160 11161 11162 11163 11164 11165 11166 11167 11168 11169 11170 11171 11172 11173 11174 11175 11176 11177 11178 11179 11180 11181 11182 11183 11184 11185 11186 11187 11188 11189 11190 11191 11192 11193 11194 11195 11196 11197 11198 11199 11200 11201 11202 11203 11204 11205 11206 11207 11208 11209 11210 11211 11212 11213 11214 11215 11216 11217 11218 11219 11220 11221 11222 11223 11224 11225 11226 11227 11228 11229 11230 11231 11232 11233 11234 11235 11236 11237 11238 11239 11240 11241 11242 11243 11244 11245 11246 11247 11248 11249 11250 11251 11252 11253 11254 11255 11256 11257 11258 11259 11260 11261 11262 11263 11264 11265 11266 11267 11268 11269 11270 11271 11272 11273 11274 11275 11276 11277 11278 11279 11280 11281 11282 11283 11284 11285 11286 11287 11288 11289 11290 11291 11292 11293 11294 11295 11296 11297 11298 11299 11300 11301 11302 11303 11304 11305 11306 11307 11308 11309 11310 11311 11312 11313 11314 11315 11316 11317 11318 11319 11320 11321 11322 11323 11324 11325 11326 11327 11328 11329 11330 11331 11332 11333 11334 11335 11336 11337 11338 11339 11340 11341 11342 11343 11344 11345 11346 11347 11348 11349 11350 11351 11352 11353 11354 11355 11356 11357 11358 11359 11360 11361 11362 11363 11364 11365 11366 11367 11368 11369 11370 11371 11372 11373 11374 11375 11376 11377 11378 11379 11380 11381 11382 11383 11384 11385 11386 11387 11388 11389 11390 11391 11392 11393 11394 11395 11396 11397 11398 11399 11400 11401 11402 11403 11404 11405 11406 11407 11408 11409 11410 11411 11412 11413 11414 11415 11416 11417 11418 11419 11420 11421 11422 11423 11424 11425 11426 11427 11428 11429 11430 11431 11432 11433 11434 11435 11436 11437 11438 11439 11440 11441 11442 11443 11444 11445 11446 11447 11448 11449 11450 11451 11452 11453 11454 11455 11456 11457 11458 11459 11460 11461 11462 11463 11464 11465 11466 11467 11468 11469 11470 11471 11472 11473 11474 11475 11476 11477 11478 11479 11480 11481 11482 11483 11484 11485 11486 11487 11488 11489 11490 11491 11492 11493 11494 11495 11496 11497 11498 11499 11500 11501 11502 11503 11504 11505 11506 11507 11508 11509 11510 11511 11512 11513 11514 11515 11516 11517 11518 11519 11520 11521 11522 11523 11524 11525 11526 11527 11528 11529 11530 11531 11532 11533 11534 11535 11536 11537 11538 11539 11540 11541 11542 11543 11544 11545 11546 11547 11548 11549 11550 11551 11552 11553 11554 11555 11556 11557 11558 11559 11560 11561 11562 11563 11564 11565 11566 11567 11568 11569 11570 11571 11572 11573 11574 11575 11576 11577 11578 11579 11580 11581 11582 11583 11584 11585 11586 11587 11588 11589 11590 11591 11592 11593 11594 11595 11596 11597 11598 11599 11600 11601 11602 11603 11604 11605 11606 11607 11608 11609 11610 11611 11612 11613 11614 11615 11616 11617 11618 11619 11620 11621 11622 11623 11624 11625 11626 11627 11628 11629 11630 11631 11632 11633 11634 11635 11636 11637 11638 11639 11640 11641 11642 11643 11644 11645 11646 11647 11648 11649 11650 11651 11652 11653 11654 11655 11656 11657 11658 11659 11660 11661 11662 11663 11664 11665 11666 11667 11668 11669 11670 11671 11672 11673 11674 11675 11676 11677 11678 11679 11680 11681 11682 11683 11684 11685 11686 11687 11688 11689 11690 11691 11692 11693 11694 11695 11696 11697 11698 11699 11700 11701 11702 11703 11704 11705 11706 11707 11708 11709 11710 11711 11712 11713 11714 11715 11716 11717 11718 11719 11720 11721 11722 11723 11724 11725 11726 11727 11728 11729 11730 11731 11732 11733 11734 11735 11736 11737 11738 11739 11740 11741 11742 11743 11744 11745 11746 11747 11748 11749 11750 11751 11752 11753 11754 11755 11756 11757 11758 11759 11760 11761 11762 11763 11764 11765 11766 11767 11768 11769 11770 11771 11772 11773 11774 11775 11776 11777 11778 11779 11780 11781 11782 11783 11784 11785 11786 11787 11788 11789 11790 11791 11792 11793 11794 11795 11796 11797 11798 11799 11800 11801 11802 11803 11804 11805 11806 11807 11808 11809 11810 11811 11812 11813 11814 11815 11816 11817 11818 11819 11820 11821 11822 11823 11824 11825 11826 11827 11828 11829 11830 11831 11832 11833 11834 11835 11836 11837 11838 11839 11840 11841 11842 11843 11844 11845 11846 11847 11848 11849 11850 11851 11852 11853 11854 11855 11856 11857 11858 11859 11860 11861 11862 11863 11864 11865 11866 11867 11868 11869 11870 11871 11872 11873 11874 11875 11876 11877 11878 11879 11880 11881 11882 11883 11884 11885 11886 11887 11888 11889 11890 11891 11892 11893 11894 11895 11896 11897 11898 11899 11900 11901 11902 11903 11904 11905 11906 11907 11908 11909 11910 11911 11912 11913 11914 11915 11916 11917 11918 11919 11920 11921 11922 11923 11924 11925 11926 11927 11928 11929 11930 11931 11932 11933 11934 11935 11936 11937 11938 11939 11940 11941 11942 11943 11944 11945 11946 11947 11948 11949 11950 11951 11952 11953 11954 11955 11956 11957 11958 11959 11960 11961 11962 11963 11964 11965 11966 11967 11968 11969 11970 11971 11972 11973 11974 11975 11976 11977 11978 11979 11980 11981 11982 11983 11984 11985 11986 11987 11988 11989 11990 11991 11992 11993 11994 11995 11996 11997 11998 11999 12000 12001 12002 12003 12004 12005 12006 12007 12008 12009 12010 12011 12012 12013 12014 12015 12016 12017 12018 12019 12020 12021 12022 12023 12024 12025 12026 12027 12028 12029 12030 12031 12032 12033 12034 12035 12036 12037 12038 12039 12040 12041 12042 12043 12044 12045 12046 12047 12048 12049 12050 12051 12052 12053 12054 12055 12056 12057 12058 12059 12060 12061 12062 12063 12064 12065 12066 12067 12068 12069 12070 12071 12072 12073 12074 12075 12076 12077 12078 12079 12080 12081 12082 12083 12084 12085 12086 12087 12088 12089 12090 12091 12092 12093 12094 12095 12096 12097 12098 12099 12100 12101 12102 12103 12104 12105 12106 12107 12108 12109 12110 12111 12112 12113 12114 12115 12116 12117 12118 12119 12120 12121 12122 12123 12124 12125 12126 12127 12128 12129 12130 12131 12132 12133 12134 12135 12136 12137 12138 12139 12140 12141 12142 12143 12144 12145 12146 12147 12148 12149 12150 12151 12152 12153 12154 12155 12156 12157 12158 12159 12160 12161 12162 12163 12164 12165 12166 12167 12168 12169 12170 12171 12172 12173 12174 12175 12176 12177 12178 12179 12180 12181 12182 12183 12184 12185 12186 12187 12188 12189 12190 12191 12192 12193 12194 12195 12196 12197 12198 12199 12200 12201 12202 12203 12204 12205 12206 12207 12208 12209 12210 12211 12212 12213 12214 12215 12216 12217 12218 12219 12220 12221 12222 12223 12224 12225 12226 12227 12228 12229 12230 12231 12232 12233 12234 12235 12236 12237 12238 12239 12240 12241 12242 12243 12244 12245 12246 12247 12248 12249 12250 12251 12252 12253 12254 12255 12256 12257 12258 12259 12260 12261 12262 12263 12264 12265 12266 12267 12268 12269 12270 12271 12272 12273 12274 12275 12276 12277 12278 12279 12280 12281 12282 12283 12284 12285 12286 12287 12288 12289 12290 12291 12292 12293 12294 12295 12296 12297 12298 12299 12300 12301 12302 12303 12304 12305 12306 12307 12308 12309 12310 12311 12312 12313 12314 12315 12316 12317 12318 12319 12320 12321 12322 12323 12324 12325 12326 12327 12328 12329 12330 12331 12332 12333 12334 12335 12336 12337 12338 12339 12340 12341 12342 12343 12344 12345 12346 12347 12348 12349 12350 12351 12352 12353 12354 12355 12356 12357 12358 12359 12360 12361 12362 12363 12364 12365 12366 12367 12368 12369 12370 12371 12372 12373 12374 12375 12376 12377 12378 12379 12380 12381 12382 12383 12384 12385 12386 12387 12388 12389 12390 12391 12392 12393 12394 12395 12396 12397 12398 12399 12400 12401 12402 12403 12404 12405 12406 12407 12408 12409 12410 12411 12412 12413 12414 12415 12416 12417 12418 12419 12420 12421 12422 12423 12424 12425 12426 12427 12428 12429 12430 12431 12432 12433 12434 12435 12436 12437 12438 12439 12440 12441 12442 12443 12444 12445 12446 12447 12448 12449 12450 12451 12452 12453 12454 12455 12456 12457 12458 12459 12460 12461 12462 12463 12464 12465 12466 12467 12468 12469 12470 12471 12472 12473 12474 12475 12476 12477 12478 12479 12480 12481 12482 12483 12484 12485 12486 12487 12488 12489 12490 12491 12492 12493 12494 12495 12496 12497 12498 12499 12500 12501 12502 12503 12504 12505 12506 12507 12508 12509 12510 12511 12512 12513 12514 12515 12516 12517 12518 12519 12520 12521 12522 12523 12524 12525 12526 12527 12528 12529 12530 12531 12532 12533 12534 12535 12536 12537 12538 12539 12540 12541 12542 12543 12544 12545 12546 12547 12548 12549 12550 12551 12552 12553 12554 12555 12556 12557 12558 12559 12560 12561 12562 12563 12564 12565 12566 12567 12568 12569 12570 12571 12572 12573 12574 12575 12576 12577 12578 12579 12580 12581 12582 12583 12584 12585 12586 12587 12588 12589 12590 12591 12592 12593 12594 12595 12596 12597 12598 12599 12600 12601 12602 12603 12604 12605 12606 12607 12608 12609 12610 12611 12612 12613 12614 12615 12616 12617 12618 12619 12620 12621 12622 12623 12624 12625 12626 12627 12628 12629 12630 12631 12632 12633 12634 12635 12636 12637 12638 12639 12640 12641 12642 12643 12644 12645 12646 12647 12648 12649 12650 12651 12652 12653 12654 12655 12656 12657 12658 12659 12660 12661 12662 12663 12664 12665 12666 12667 12668 12669 12670 12671 12672 12673 12674 12675 12676 12677 12678 12679 12680 12681 12682 12683 12684 12685 12686 12687 12688 12689 12690 12691 12692 12693 12694 12695 12696 12697 12698 12699 12700 12701 12702 12703 12704 12705 12706 12707 12708 12709 12710 12711 12712 12713 12714 12715 12716 12717 12718 12719 12720 12721 12722 12723 12724 12725 12726 12727 12728 12729 12730 12731 12732 12733 12734 12735 12736 12737 12738 12739 12740 12741 12742 12743 12744 12745 12746 12747 12748 12749 12750 12751 12752 12753 12754 12755 12756 12757 12758 12759 12760 12761 12762 12763 12764 12765 12766 12767 12768 12769 12770 12771 12772 12773 12774 12775 12776 12777 12778 12779 12780 12781 12782 12783 12784 12785 12786 12787 12788 12789 12790 12791 12792 12793 12794 12795 12796 12797 12798 12799 12800 12801 12802 12803 12804 12805 12806 12807 12808 12809 12810 12811 12812 12813 12814 12815 12816 12817 12818 12819 12820 12821 12822 12823 12824 12825 12826 12827 12828 12829 12830 12831 12832 12833 12834 12835 12836 12837 12838 12839 12840 12841 12842 12843 12844 12845 12846 12847 12848 12849 12850 12851 12852 12853 12854 12855 12856 12857 12858 12859 12860 12861 12862 12863 12864 12865 12866 12867 12868 12869 12870 12871 12872 12873 12874 12875 12876 12877 12878 12879 12880 12881 12882 12883 12884 12885 12886 12887 12888 12889 12890 12891 12892 12893 12894 12895 12896 12897 12898 12899 12900 12901 12902 12903 12904 12905 12906 12907 12908 12909 12910 12911 12912 12913 12914 12915 12916 12917 12918 12919 12920 12921 12922 12923 12924 12925 12926 12927 12928 12929 12930 12931 12932 12933 12934 12935 12936 12937 12938 12939 12940 12941 12942 12943 12944 12945 12946 12947 12948 12949 12950 12951 12952 12953 12954 12955 12956 12957 12958 12959 12960 12961 12962 12963 12964 12965 12966 12967 12968 12969 12970 12971 12972 12973 12974 12975 12976 12977 12978 12979 12980 12981 12982 12983 12984 12985 12986 12987 12988 12989 12990 12991 12992 12993 12994 12995 12996 12997 12998 12999 13000 13001 13002 13003 13004 13005 13006 13007 13008 13009 13010 13011 13012 13013 13014 13015 13016 13017 13018 13019 13020 13021 13022 13023 13024 13025 13026 13027 13028 13029 13030 13031 13032 13033 13034 13035 13036 13037 13038 13039 13040 13041 13042 13043 13044 13045 13046 13047 13048 13049 13050 13051 13052 13053 13054 13055 13056 13057 13058 13059 13060 13061 13062 13063 13064 13065 13066 13067 13068 13069 13070 13071 13072 13073 13074 13075 13076 13077 13078 13079 13080 13081 13082 13083 13084 13085 13086 13087 13088 13089 13090 13091 13092 13093 13094 13095 13096 13097 13098 13099 13100 13101 13102 13103 13104 13105 13106 13107 13108 13109 13110 13111 13112 13113 13114 13115 13116 13117 13118 13119 13120 13121 13122 13123 13124 13125 13126 13127 13128 13129 13130 13131 13132 13133 13134 13135 13136 13137 13138 13139 13140 13141 13142 13143 13144 13145 13146 13147 13148 13149 13150 13151 13152 13153 13154 13155 13156 13157 13158 13159 13160 13161 13162 13163 13164 13165 13166 13167 13168 13169 13170 13171 13172 13173 13174 13175 13176 13177 13178 13179 13180 13181 13182 13183 13184 13185 13186 13187 13188 13189 13190 13191 13192 13193 13194 13195 13196 13197 13198 13199 13200 13201 13202 13203 13204 13205 13206 13207 13208 13209 13210 13211 13212 13213 13214 13215 13216 13217 13218 13219 13220 13221 13222 13223 13224 13225 13226 13227 13228 13229 13230 13231 13232 13233 13234 13235 13236 13237 13238 13239 13240 13241 13242 13243 13244 13245 13246 13247 13248 13249 13250 13251 13252 13253 13254 13255 13256 13257 13258 13259 13260 13261 13262 13263 13264 13265 13266 13267 13268 13269 13270 13271 13272 13273 13274 13275 13276 13277 13278 13279 13280 13281 13282 13283 13284 13285 13286 13287 13288 13289 13290 13291 13292 13293 13294 13295 13296 13297 13298 13299 13300 13301 13302 13303 13304 13305 13306 13307 13308 13309 13310 13311 13312 13313 13314 13315 13316 13317 13318 13319 13320 13321 13322 13323 13324 13325 13326 13327 13328 13329 13330 13331 13332 13333 13334 13335 13336 13337 13338 13339 13340 13341 13342 13343 13344 13345 13346 13347 13348 13349 13350 13351 13352 13353 13354 13355 13356 13357 13358 13359 13360 13361 13362 13363 13364 13365 13366 13367 13368 13369 13370 13371 13372 13373 13374 13375 13376 13377 13378 13379 13380 13381 13382 13383 13384 13385 13386 13387 13388 13389 13390 13391 13392 13393 13394 13395 13396 13397 13398 13399 13400 13401 13402 13403 13404 13405 13406 13407 13408 13409 13410 13411 13412 13413 13414 13415 13416 13417 13418 13419 13420 13421 13422 13423 13424 13425 13426 13427 13428 13429 13430 13431 13432 13433 13434 13435 13436 13437 13438 13439 13440 13441 13442 13443 13444 13445 13446 13447 13448 13449 13450 13451 13452 13453 13454 13455 13456 13457 13458 13459 13460 13461 13462 13463 13464 13465 13466 13467 13468 13469 13470 13471 13472 13473 13474 13475 13476 13477 13478 13479 13480 13481 13482 13483 13484 13485 13486 13487 13488 13489 13490 13491 13492 13493 13494 13495 13496 13497 13498 13499 13500 13501 13502 13503 13504 13505 13506 13507 13508 13509 13510 13511 13512 13513 13514 13515 13516 13517 13518 13519 13520 13521 13522 13523 13524 13525 13526 13527 13528 13529 13530 13531 13532 13533 13534 13535 13536 13537 13538 13539 13540 13541 13542 13543 13544 13545 13546 13547 13548 13549 13550 13551 13552 13553 13554 13555 13556 13557 13558 13559 13560 13561 13562 13563 13564 13565 13566 13567 13568 13569 13570 13571 13572 13573 13574 13575 13576 13577 13578 13579 13580 13581 13582 13583 13584 13585 13586 13587 13588 13589 13590 13591 13592 13593 13594 13595 13596 13597 13598 13599 13600 13601 13602 13603 13604 13605 13606 13607 13608 13609 13610 13611 13612 13613 13614 13615 13616 13617 13618 13619 13620 13621 13622 13623 13624 13625 13626 13627 13628 13629 13630 13631 13632 13633 13634 13635 13636 13637 13638 13639 13640 13641 13642 13643 13644 13645 13646 13647 13648 13649 13650 13651 13652 13653 13654 13655 13656 13657 13658 13659 13660 13661 13662 13663 13664 13665 13666 13667 13668 13669 13670 13671 13672 13673 13674 13675 13676 13677 13678 13679 13680 13681 13682 13683 13684 13685 13686 13687 13688 13689 13690 13691 13692 13693 13694 13695 13696 13697 13698 13699 13700 13701 13702 13703 13704 13705 13706 13707 13708 13709 13710 13711 13712 13713 13714 13715 13716 13717 13718 13719 13720 13721 13722 13723 13724 13725 13726 13727 13728 13729 13730 13731 13732 13733 13734 13735 13736 13737 13738 13739 13740 13741 13742 13743 13744 13745 13746 13747 13748 13749 13750 13751 13752 13753 13754 13755 13756 13757 13758 13759 13760 13761 13762 13763 13764 13765 13766 13767 13768 13769 13770 13771 13772 13773 13774 13775 13776 13777 13778 13779 13780 13781 13782 13783 13784 13785 13786 13787 13788 13789 13790 13791 13792 13793 13794 13795 13796 13797 13798 13799 13800 13801 13802 13803 13804 13805 13806 13807 13808 13809 13810 13811 13812 13813 13814 13815 13816 13817 13818 13819 13820 13821 13822 13823 13824 13825 13826 13827 13828 13829 13830 13831 13832 13833 13834 13835 13836 13837 13838 13839 13840 13841 13842 13843 13844 13845 13846 13847 13848 13849 13850 13851 13852 13853 13854 13855 13856 13857 13858 13859 13860 13861 13862 13863 13864 13865 13866 13867 13868 13869 13870 13871 13872 13873 13874 13875 13876 13877 13878 13879 13880 13881 13882 13883 13884 13885 13886 13887 13888 13889 13890 13891 13892 13893 13894 13895 13896 13897 13898 13899 13900 13901 13902 13903 13904 13905 13906 13907 13908 13909 13910 13911 13912 13913 13914 13915 13916 13917 13918 13919 13920 13921 13922 13923 13924 13925 13926 13927 13928 13929 13930 13931 13932 13933 13934 13935 13936 13937 13938 13939 13940 13941 13942 13943 13944 13945 13946 13947 13948 13949 13950 13951 13952 13953 13954 13955 13956 13957 13958 13959 13960 13961 13962 13963 13964 13965 13966 13967 13968 13969 13970 13971 13972 13973 13974 13975 13976 13977 13978 13979 13980 13981 13982 13983 13984 13985 13986 13987 13988 13989 13990 13991 13992 13993 13994 13995 13996 13997 13998 13999 14000 14001 14002 14003 14004 14005 14006 14007 14008 14009 14010 14011 14012 14013 14014 14015 14016 14017 14018 14019 14020 14021 14022 14023 14024 14025 14026 14027 14028 14029 14030 14031 14032 14033 14034 14035 14036 14037 14038 14039 14040 14041 14042 14043 14044 14045 14046 14047 14048 14049 14050 14051 14052 14053 14054 14055 14056 14057 14058 14059 14060 14061 14062 14063 14064 14065 14066 14067 14068 14069 14070 14071 14072 14073 14074 14075 14076 14077 14078 14079 14080 14081 14082 14083 14084 14085 14086 14087 14088 14089 14090 14091 14092 14093 14094 14095 14096 14097 14098 14099 14100 14101 14102 14103 14104 14105 14106 14107 14108 14109 14110 14111 14112 14113 14114 14115 14116 14117 14118 14119 14120 14121 14122 14123 14124 14125 14126 14127 14128 14129 14130 14131 14132 14133 14134 14135 14136 14137 14138 14139 14140 14141 14142 14143 14144 14145 14146 14147 14148 14149 14150 14151 14152 14153 14154 14155 14156 14157 14158 14159 14160 14161 14162 14163 14164 14165 14166 14167 14168 14169 14170 14171 14172 14173 14174 14175 14176 14177 14178 14179 14180 14181 14182 14183 14184 14185 14186 14187 14188 14189 14190 14191 14192 14193 14194 14195 14196 14197 14198 14199 14200 14201 14202 14203 14204 14205 14206 14207 14208 14209 14210 14211 14212 14213 14214 14215 14216 14217 14218 14219 14220 14221 14222 14223 14224 14225 14226 14227 14228 14229 14230 14231 14232 14233 14234 14235 14236 14237 14238 14239 14240 14241 14242 14243 14244 14245 14246 14247 14248 14249 14250 14251 14252 14253 14254 14255 14256 14257 14258 14259 14260 14261 14262 14263 14264 14265 14266 14267 14268 14269 14270 14271 14272 14273 14274 14275 14276 14277 14278 14279 14280 14281 14282 14283 14284 14285 14286 14287 14288 14289 14290 14291 14292 14293 14294 14295 14296 14297 14298 14299 14300 14301 14302 14303 14304 14305 14306 14307 14308 14309 14310 14311 14312 14313 14314 14315 14316 14317 14318 14319 14320 14321 14322 14323 14324 14325 14326 14327 14328 14329 14330 14331 14332 14333 14334 14335 14336 14337 14338 14339 14340 14341 14342 14343 14344 14345 14346 14347 14348 14349 14350 14351 14352 14353 14354 14355 14356 14357 14358 14359 14360 14361 14362 14363 14364 14365 14366 14367 14368 14369 14370 14371 14372 14373 14374 14375 14376 14377 14378 14379 14380 14381 14382 14383 14384 14385 14386 14387 14388 14389 14390 14391 14392 14393 14394 14395 14396 14397 14398 14399 14400 14401 14402 14403 14404 14405 14406 14407 14408 14409 14410 14411 14412 14413 14414 14415 14416 14417 14418 14419 14420 14421 14422 14423 14424 14425 14426 14427 14428 14429 14430 14431 14432 14433 14434 14435 14436 14437 14438 14439 14440 14441 14442 14443 14444 14445 14446 14447 14448 14449 14450 14451 14452 14453 14454 14455 14456 14457 14458 14459 14460 14461 14462 14463 14464 14465 14466 14467 14468 14469 14470 14471 14472 14473 14474 14475 14476 14477 14478 14479 14480 14481 14482 14483 14484 14485 14486 14487 14488 14489 14490 14491 14492 14493 14494 14495 14496 14497 14498 14499 14500 14501 14502 14503 14504 14505 14506 14507 14508 14509 14510 14511 14512 14513 14514 14515 14516 14517 14518 14519 14520 14521 14522 14523 14524 14525 14526 14527 14528 14529 14530 14531 14532 14533 14534 14535 14536 14537 14538 14539 14540 14541 14542 14543 14544 14545 14546 14547 14548 14549 14550 14551 14552 14553 14554 14555 14556 14557 14558 14559 14560 14561 14562 14563 14564 14565 14566 14567 14568 14569 14570 14571 14572 14573 14574 14575 14576 14577 14578 14579 14580 14581 14582 14583 14584 14585 14586 14587 14588 14589 14590 14591 14592 14593 14594 14595 14596 14597 14598 14599 14600 14601 14602 14603 14604 14605 14606 14607 14608 14609 14610 14611 14612 14613 14614 14615 14616 14617 14618 14619 14620 14621 14622 14623 14624 14625 14626 14627 14628 14629 14630 14631 14632 14633 14634 14635 14636 14637 14638 14639 14640 14641 14642 14643 14644 14645 14646 14647 14648 14649 14650 14651 14652 14653 14654 14655 14656 14657 14658 14659 14660 14661 14662 14663 14664 14665 14666 14667 14668 14669 14670 14671 14672 14673 14674 14675 14676 14677 14678 14679 14680 14681 14682 14683 14684 14685 14686 14687 14688 14689 14690 14691 14692 14693 14694 14695 14696 14697 14698 14699 14700 14701 14702 14703 14704 14705 14706 14707 14708 14709 14710 14711 14712 14713 14714 14715 14716 14717 14718 14719 14720 14721 14722 14723 14724 14725 14726 14727 14728 14729 14730 14731 14732 14733 14734 14735 14736 14737 14738 14739 14740 14741 14742 14743 14744 14745 14746 14747 14748 14749 14750 14751 14752 14753 14754 14755 14756 14757 14758 14759 14760 14761 14762 14763 14764 14765 14766 14767 14768 14769 14770 14771 14772 14773 14774 14775 14776 14777 14778 14779 14780 14781 14782 14783 14784 14785 14786 14787 14788 14789 14790 14791 14792 14793 14794 14795 14796 14797 14798 14799 14800 14801 14802 14803 14804 14805 14806 14807 14808 14809 14810 14811 14812 14813 14814 14815 14816 14817 14818 14819 14820 14821 14822 14823 14824 14825 14826 14827 14828 14829 14830 14831 14832 14833 14834 14835 14836 14837 14838 14839 14840 14841 14842 14843 14844 14845 14846 14847 14848 14849 14850 14851 14852 14853 14854 14855 14856 14857 14858 14859 14860 14861 14862 14863 14864 14865 14866 14867 14868 14869 14870 14871 14872 14873 14874 14875 14876 14877 14878 14879 14880 14881 14882 14883 14884 14885 14886 14887 14888 14889 14890 14891 14892 14893 14894 14895 14896 14897 14898 14899 14900 14901 14902 14903 14904 14905 14906 14907 14908 14909 14910 14911 14912 14913 14914 14915 14916 14917 14918 14919 14920 14921 14922 14923 14924 14925 14926 14927 14928 14929 14930 14931 14932 14933 14934 14935 14936 14937 14938 14939 14940 14941 14942 14943 14944 14945 14946 14947 14948 14949 14950 14951 14952 14953 14954 14955 14956 14957 14958 14959 14960 14961 14962 14963 14964 14965 14966 14967 14968 14969 14970 14971 14972 14973 14974 14975 14976 14977 14978 14979 14980 14981 14982 14983 14984 14985 14986 14987 14988 14989 14990 14991 14992 14993 14994 14995 14996 14997 14998 14999 15000 15001 15002 15003 15004 15005 15006 15007 15008 15009 15010 15011 15012 15013 15014 15015 15016 15017 15018 15019 15020 15021 15022 15023 15024 15025 15026 15027 15028 15029 15030 15031 15032 15033 15034 15035 15036 15037 15038 15039 15040 15041 15042 15043 15044 15045 15046 15047 15048 15049 15050 15051 15052 15053 15054 15055 15056 15057 15058 15059 15060 15061 15062 15063 15064 15065 15066 15067 15068 15069 15070 15071 15072 15073 15074 15075 15076 15077 15078 15079 15080 15081 15082 15083 15084 15085 15086 15087 15088 15089 15090 15091 15092 15093 15094 15095 15096 15097 15098 15099 15100 15101 15102 15103 15104 15105 15106 15107 15108 15109 15110 15111 15112 15113 15114 15115 15116 15117 15118 15119 15120 15121 15122 15123 15124 15125 15126 15127 15128 15129 15130 15131 15132 15133 15134 15135 15136 15137 15138 15139 15140 15141 15142 15143 15144 15145 15146 15147 15148 15149 15150 15151 15152 15153 15154 15155 15156 15157 15158 15159 15160 15161 15162 15163 15164 15165 15166 15167 15168 15169 15170 15171 15172 15173 15174 15175 15176 15177 15178 15179 15180 15181 15182 15183 15184 15185 15186 15187 15188 15189 15190 15191 15192 15193 15194 15195 15196 15197 15198 15199 15200 15201 15202 15203 15204 15205 15206 15207 15208 15209 15210 15211 15212 15213 15214 15215 15216 15217 15218 15219 15220 15221 15222 15223 15224 15225 15226 15227 15228 15229 15230 15231 15232 15233 15234 15235 15236 15237 15238 15239 15240 15241 15242 15243 15244 15245 15246 15247 15248 15249 15250 15251 15252 15253 15254 15255 15256 15257 15258 15259 15260 15261 15262 15263 15264 15265 15266 15267 15268 15269 15270 15271 15272 15273 15274 15275 15276 15277 15278 15279 15280 15281 15282 15283 15284 15285 15286 15287 15288 15289 15290 15291 15292 15293 15294 15295 15296 15297 15298 15299 15300 15301 15302 15303 15304 15305 15306 15307 15308 15309 15310 15311 15312 15313 15314 15315 15316 15317 15318 15319 15320 15321 15322 15323 15324 15325 15326 15327 15328 15329 15330 15331 15332 15333 15334 15335 15336 15337 15338 15339 15340 15341 15342 15343 15344 15345 15346 15347 15348 15349 15350 15351 15352 15353 15354 15355 15356 15357 15358 15359 15360 15361 15362 15363 15364 15365 15366 15367 15368 15369 15370 15371 15372 15373 15374 15375 15376 15377 15378 15379 15380 15381 15382 15383 15384 15385 15386 15387 15388 15389 15390 15391 15392 15393 15394 15395 15396 15397 15398 15399 15400 15401 15402 15403 15404 15405 15406 15407 15408 15409 15410 15411 15412 15413 15414 15415 15416 15417 15418 15419 15420 15421 15422 15423 15424 15425 15426 15427 15428 15429 15430 15431 15432 15433 15434 15435 15436 15437 15438 15439 15440 15441 15442 15443 15444 15445 15446 15447 15448 15449 15450 15451 15452 15453 15454 15455 15456 15457 15458 15459 15460 15461 15462 15463 15464 15465 15466 15467 15468 15469 15470 15471 15472 15473 15474 15475 15476 15477 15478 15479 15480 15481 15482 15483 15484 15485 15486 15487 15488 15489 15490 15491 15492 15493 15494 15495 15496 15497 15498 15499 15500 15501 15502 15503 15504 15505 15506 15507 15508 15509 15510 15511 15512 15513 15514 15515 15516 15517 15518 15519 15520 15521 15522 15523 15524 15525 15526 15527 15528 15529 15530 15531 15532 15533 15534 15535 15536 15537 15538 15539 15540 15541 15542 15543 15544 15545 15546 15547 15548 15549 15550 15551 15552 15553 15554 15555 15556 15557 15558 15559 15560 15561 15562 15563 15564 15565 15566 15567 15568 15569 15570 15571 15572 15573 15574 15575 15576 15577 15578 15579 15580 15581 15582 15583 15584 15585 15586 15587 15588 15589 15590 15591 15592 15593 15594 15595 15596 15597 15598 15599 15600 15601 15602 15603 15604 15605 15606 15607 15608 15609 15610 15611 15612 15613 15614 15615 15616 15617 15618 15619 15620 15621 15622 15623 15624 15625 15626 15627 15628 15629 15630 15631 15632 15633 15634 15635 15636 15637 15638 15639 15640 15641 15642 15643 15644 15645 15646 15647 15648 15649 15650 15651 15652 15653 15654 15655 15656 15657 15658 15659 15660 15661 15662 15663 15664 15665 15666 15667 15668 15669 15670 15671 15672 15673 15674 15675 15676 15677 15678 15679 15680 15681 15682 15683 15684 15685 15686 15687 15688 15689 15690 15691 15692 15693 15694 15695 15696 15697 15698 15699 15700 15701 15702 15703 15704 15705 15706 15707 15708 15709 15710 15711 15712 15713 15714 15715 15716 15717 15718 15719 15720 15721 15722 15723 15724 15725 15726 15727 15728 15729 15730 15731 15732 15733 15734 15735 15736 15737 15738 15739 15740 15741 15742 15743 15744 15745 15746 15747 15748 15749 15750 15751 15752 15753 15754 15755 15756 15757 15758 15759 15760 15761 15762 15763 15764 15765 15766 15767 15768 15769 15770 15771 15772 15773 15774 15775 15776 15777 15778 15779 15780 15781 15782 15783 15784 15785 15786 15787 15788 15789 15790 15791 15792 15793 15794 15795 15796 15797 15798 15799 15800 15801 15802 15803 15804 15805 15806 15807 15808 15809 15810 15811 15812 15813 15814 15815 15816 15817 15818 15819 15820 15821 15822 15823 15824 15825 15826 15827 15828 15829 15830 15831 15832 15833 15834 15835 15836 15837 15838 15839 15840 15841 15842 15843 15844 15845 15846 15847 15848 15849 15850 15851 15852 15853 15854 15855 15856 15857 15858 15859 15860 15861 15862 15863 15864 15865 15866 15867 15868 15869 15870 15871 15872 15873 15874 15875 15876 15877 15878 15879 15880 15881 15882 15883 15884 15885 15886 15887 15888 15889 15890 15891 15892 15893 15894 15895 15896 15897 15898 15899 15900 15901 15902 15903 15904 15905 15906 15907 15908 15909 15910 15911 15912 15913 15914 15915 15916 15917 15918 15919 15920 15921 15922 15923 15924 15925 15926 15927 15928 15929 15930 15931 15932 15933 15934 15935 15936 15937 15938 15939 15940 15941 15942 15943 15944 15945 15946 15947 15948 15949 15950 15951 15952 15953 15954 15955 15956 15957 15958 15959 15960 15961 15962 15963 15964 15965 15966 15967 15968 15969 15970 15971 15972 15973 15974 15975 15976 15977 15978 15979 15980 15981 15982 15983 15984 15985 15986 15987 15988 15989 15990 15991 15992 15993 15994 15995 15996 15997 15998 15999 16000 16001 16002 16003 16004 16005 16006 16007 16008 16009 16010 16011 16012 16013 16014 16015 16016 16017 16018 16019 16020 16021 16022 16023 16024 16025 16026 16027 16028 16029 16030 16031 16032 16033 16034 16035 16036 16037 16038 16039 16040 16041 16042 16043 16044 16045 16046 16047 16048 16049 16050 16051 16052 16053 16054 16055 16056 16057 16058 16059 16060 16061 16062 16063 16064 16065 16066 16067 16068 16069 16070 16071 16072 16073 16074 16075 16076 16077 16078 16079 16080 16081 16082 16083 16084 16085 16086 16087 16088 16089 16090 16091 16092 16093 16094 16095 16096 16097 16098 16099 16100 16101 16102 16103 16104 16105 16106 16107 16108 16109 16110 16111 16112 16113 16114 16115 16116 16117 16118 16119 16120 16121 16122 16123 16124 16125 16126 16127 16128 16129 16130 16131 16132 16133 16134 16135 16136 16137 16138 16139 16140 16141 16142 16143 16144 16145 16146 16147 16148 16149 16150 16151 16152 16153 16154 16155 16156 16157 16158 16159 16160 16161 16162 16163 16164 16165 16166 16167 16168 16169 16170 16171 16172 16173 16174 16175 16176 16177 16178 16179 16180 16181 16182 16183 16184 16185 16186 16187 16188 16189 16190 16191 16192 16193 16194 16195 16196 16197 16198 16199 16200 16201 16202 16203 16204 16205 16206 16207 16208 16209 16210 16211 16212 16213 16214 16215 16216 16217 16218 16219 16220 16221 16222 16223 16224 16225 16226 16227 16228 16229 16230 16231 16232 16233 16234 16235 16236 16237 16238 16239 16240 16241 16242 16243 16244 16245 16246 16247 16248 16249 16250 16251 16252 16253 16254 16255 16256 16257 16258 16259 16260 16261 16262 16263 16264 16265 16266 16267 16268 16269 16270 16271 16272 16273 16274 16275 16276 16277 16278 16279 16280 16281 16282 16283 16284 16285 16286 16287 16288 16289 16290 16291 16292 16293 16294 16295 16296 16297 16298 16299 16300 16301 16302 16303 16304 16305 16306 16307 16308 16309 16310 16311 16312 16313 16314 16315 16316 16317 16318 16319 16320 16321 16322 16323 16324 16325 16326 16327 16328 16329 16330 16331 16332 16333 16334 16335 16336 16337 16338 16339 16340 16341 16342 16343 16344 16345 16346 16347 16348 16349 16350 16351 16352 16353 16354 16355 16356 16357 16358 16359 16360 16361 16362 16363 16364 16365 16366 16367 16368 16369 16370 16371 16372 16373 16374 16375 16376 16377 16378 16379 16380 16381 16382 16383 16384 16385 16386 16387 16388 16389 16390 16391 16392 16393 16394 16395 16396 16397 16398 16399 16400 16401 16402 16403 16404 16405 16406 16407 16408 16409 16410 16411 16412 16413 16414 16415 16416 16417 16418 16419 16420 16421 16422 16423 16424 16425 16426 16427 16428 16429 16430 16431 16432 16433 16434 16435 16436 16437 16438 16439 16440 16441 16442 16443 16444 16445 16446 16447 16448 16449 16450 16451 16452 16453 16454 16455 16456 16457 16458 16459 16460 16461 16462 16463 16464 16465 16466 16467 16468 16469 16470 16471 16472 16473 16474 16475 16476 16477 16478 16479 16480 16481 16482 16483 16484 16485 16486 16487 16488 16489 16490 16491 16492 16493 16494 16495 16496 16497 16498 16499 16500 16501 16502 16503 16504 16505 16506 16507 16508 16509 16510 16511 16512 16513 16514 16515 16516 16517 16518 16519 16520 16521 16522 16523 16524 16525 16526 16527 16528 16529 16530 16531 16532 16533 16534 16535 16536 16537 16538 16539 16540 16541 16542 16543 16544 16545 16546 16547 16548 16549 16550 16551 16552 16553 16554 16555 16556 16557 16558 16559 16560 16561 16562 16563 16564 16565 16566 16567 16568 16569 16570 16571 16572 16573 16574 16575 16576 16577 16578 16579 16580 16581 16582 16583 16584 16585 16586 16587 16588 16589 16590 16591 16592 16593 16594 16595 16596 16597 16598 16599 16600 16601 16602 16603 16604 16605 16606 16607 16608 16609 16610 16611 16612 16613 16614 16615 16616 16617 16618 16619 16620 16621 16622 16623 16624 16625 16626 16627 16628 16629 16630 16631 16632 16633 16634 16635 16636 16637 16638 16639 16640 16641 16642 16643 16644 16645 16646 16647 16648 16649 16650 16651 16652 16653 16654 16655 16656 16657 16658 16659 16660 16661 16662 16663 16664 16665 16666 16667 16668 16669 16670 16671 16672 16673 16674 16675 16676 16677 16678 16679 16680 16681 16682 16683 16684 16685 16686 16687 16688 16689 16690 16691 16692 16693 16694 16695 16696 16697 16698 16699 16700 16701 16702 16703 16704 16705 16706 16707 16708 16709 16710 16711 16712 16713 16714 16715 16716 16717 16718 16719 16720 16721 16722 16723 16724 16725 16726 16727 16728 16729 16730 16731 16732 16733 16734 16735 16736 16737 16738 16739 16740 16741 16742 16743 16744 16745 16746 16747 16748 16749 16750 16751 16752 16753 16754 16755 16756 16757 16758 16759 16760 16761 16762 16763 16764 16765 16766 16767 16768 16769 16770 16771 16772 16773 16774 16775 16776 16777 16778 16779 16780 16781 16782 16783 16784 16785 16786 16787 16788 16789 16790 16791 16792 16793 16794 16795 16796 16797 16798 16799 16800 16801 16802 16803 16804 16805 16806 16807 16808 16809 16810 16811 16812 16813 16814 16815 16816 16817 16818 16819 16820 16821 16822 16823 16824 16825 16826 16827 16828 16829 16830 16831 16832 16833 16834 16835 16836 16837 16838 16839 16840 16841 16842 16843 16844 16845 16846 16847 16848 16849 16850 16851 16852 16853 16854 16855 16856 16857 16858 16859 16860 16861 16862 16863 16864 16865 16866 16867 16868 16869 16870 16871 16872 16873 16874 16875 16876 16877 16878 16879 16880 16881 16882 16883 16884 16885 16886 16887 16888 16889 16890 16891 16892 16893 16894 16895 16896 16897 16898 16899 16900 16901 16902 16903 16904 16905 16906 16907 16908 16909 16910 16911 16912 16913 16914 16915 16916 16917 16918 16919 16920 16921 16922 16923 16924 16925 16926 16927 16928 16929 16930 16931 16932 16933 16934 16935 16936 16937 16938 16939 16940 16941 16942 16943 16944 16945 16946 16947 16948 16949 16950 16951 16952 16953 16954 16955 16956 16957 16958 16959 16960 16961 16962 16963 16964 16965 16966 16967 16968 16969 16970 16971 16972 16973 16974 16975 16976 16977 16978 16979 16980 16981 16982 16983 16984 16985 16986 16987 16988 16989 16990 16991 16992 16993 16994 16995 16996 16997 16998 16999 17000 17001 17002 17003 17004 17005 17006 17007 17008 17009 17010 17011 17012 17013 17014 17015 17016 17017 17018 17019 17020 17021 17022 17023 17024 17025 17026 17027 17028 17029 17030 17031 17032 17033 17034 17035 17036 17037 17038 17039 17040 17041 17042 17043 17044 17045 17046 17047 17048 17049 17050 17051 17052 17053 17054 17055 17056 17057 17058 17059 17060 17061 17062 17063 17064 17065 17066 17067 17068 17069 17070 17071 17072 17073 17074 17075 17076 17077 17078 17079 17080 17081 17082 17083 17084 17085 17086 17087 17088 17089 17090 17091 17092 17093 17094 17095 17096 17097 17098 17099 17100 17101 17102 17103 17104 17105 17106 17107 17108 17109 17110 17111 17112 17113 17114 17115 17116 17117 17118 17119 17120 17121 17122 17123 17124 17125 17126 17127 17128 17129 17130 17131 17132 17133 17134 17135 17136 17137 17138 17139 17140 17141 17142 17143 17144 17145 17146 17147 17148 17149 17150 17151 17152 17153 17154 17155 17156 17157 17158 17159 17160 17161 17162 17163 17164 17165 17166 17167 17168 17169 17170 17171 17172 17173 17174 17175 17176 17177 17178 17179 17180 17181 17182 17183 17184 17185 17186 17187 17188 17189 17190 17191 17192 17193 17194 17195 17196 17197 17198 17199 17200 17201 17202 17203 17204 17205 17206 17207 17208 17209 17210 17211 17212 17213 17214 17215 17216 17217 17218 17219 17220 17221 17222 17223 17224 17225 17226 17227 17228 17229 17230 17231 17232 17233 17234 17235 17236 17237 17238 17239 17240 17241 17242 17243 17244 17245 17246 17247 17248 17249 17250 17251 17252 17253 17254 17255 17256 17257 17258 17259 17260 17261 17262 17263 17264 17265 17266 17267 17268 17269 17270 17271 17272 17273 17274 17275 17276 17277 17278 17279 17280 17281 17282 17283 17284 17285 17286 17287 17288 17289 17290 17291 17292 17293 17294 17295 17296 17297 17298 17299 17300 17301 17302 17303 17304 17305 17306 17307 17308 17309 17310 17311 17312 17313 17314 17315 17316 17317 17318 17319 17320 17321 17322 17323 17324 17325 17326 17327 17328 17329 17330 17331 17332 17333 17334 17335 17336 17337 17338 17339 17340 17341 17342 17343 17344 17345 17346 17347 17348 17349 17350 17351 17352 17353 17354 17355 17356 17357 17358 17359 17360 17361 17362 17363 17364 17365 17366 17367 17368 17369 17370 17371 17372 17373 17374 17375 17376 17377 17378 17379 17380 17381 17382 17383 17384 17385 17386 17387 17388 17389 17390 17391 17392 17393 17394 17395 17396 17397 17398 17399 17400 17401 17402 17403 17404 17405 17406 17407 17408 17409 17410 17411 17412 17413 17414 17415 17416 17417 17418 17419 17420 17421 17422 17423 17424 17425 17426 17427 17428 17429 17430 17431 17432 17433 17434 17435 17436 17437 17438 17439 17440 17441 17442 17443 17444 17445 17446 17447 17448 17449 17450 17451 17452 17453 17454 17455 17456 17457 17458 17459 17460 17461 17462 17463 17464 17465 17466 17467 17468 17469 17470 17471 17472 17473 17474 17475 17476 17477 17478 17479 17480 17481 17482 17483 17484 17485 17486 17487 17488 17489 17490 17491 17492 17493 17494 17495 17496 17497 17498 17499 17500 17501 17502 17503 17504 17505 17506 17507 17508 17509 17510 17511 17512 17513 17514 17515 17516 17517 17518 17519 17520 17521 17522 17523 17524 17525 17526 17527 17528 17529 17530 17531 17532 17533 17534 17535 17536 17537 17538 17539 17540 17541 17542 17543 17544 17545 17546 17547 17548 17549 17550 17551 17552 17553 17554 17555 17556 17557 17558 17559 17560 17561 17562 17563 17564 17565 17566 17567 17568 17569 17570 17571 17572 17573 17574 17575 17576 17577 17578 17579 17580 17581 17582 17583 17584 17585 17586 17587 17588 17589 17590 17591 17592 17593 17594 17595 17596 17597 17598 17599 17600 17601 17602 17603 17604 17605 17606 17607 17608 17609 17610 17611 17612 17613 17614 17615 17616 17617 17618 17619 17620 17621 17622 17623 17624 17625 17626 17627 17628 17629 17630 17631 17632 17633 17634 17635 17636 17637 17638 17639 17640 17641 17642 17643 17644 17645 17646 17647 17648 17649 17650 17651 17652 17653 17654 17655 17656 17657 17658 17659 17660 17661 17662 17663 17664 17665 17666 17667 17668 17669 17670 17671 17672 17673 17674 17675 17676 17677 17678 17679 17680 17681 17682 17683 17684 17685 17686 17687 17688 17689 17690 17691 17692 17693 17694 17695 17696 17697 17698 17699 17700 17701 17702 17703 17704 17705 17706 17707 17708 17709 17710 17711 17712 17713 17714 17715 17716 17717 17718 17719 17720 17721 17722 17723 17724 17725 17726 17727 17728 17729 17730 17731 17732 17733 17734 17735 17736 17737 17738 17739 17740 17741 17742 17743 17744 17745 17746 17747 17748 17749 17750 17751 17752 17753 17754 17755 17756 17757 17758 17759 17760 17761 17762 17763 17764 17765 17766 17767 17768 17769 17770 17771 17772 17773 17774 17775 17776 17777 17778 17779 17780 17781 17782 17783 17784 17785 17786 17787 17788 17789 17790 17791 17792 17793 17794 17795 17796 17797 17798 17799 17800 17801 17802 17803 17804 17805 17806 17807 17808 17809 17810 17811 17812 17813 17814 17815 17816 17817 17818 17819 17820 17821 17822 17823 17824 17825 17826 17827 17828 17829 17830 17831 17832 17833 17834 17835 17836 17837 17838 17839 17840 17841 17842 17843 17844 17845 17846 17847 17848 17849 17850 17851 17852 17853 17854 17855 17856 17857 17858 17859 17860 17861 17862 17863 17864 17865 17866 17867 17868 17869 17870 17871 17872 17873 17874 17875 17876 17877 17878 17879 17880 17881 17882 17883 17884 17885 17886 17887 17888 17889 17890 17891 17892 17893 17894 17895 17896 17897 17898 17899 17900 17901 17902 17903 17904 17905 17906 17907 17908 17909 17910 17911 17912 17913 17914 17915 17916 17917 17918 17919 17920 17921 17922 17923 17924 17925 17926 17927 17928 17929 17930 17931 17932 17933 17934 17935 17936 17937 17938 17939 17940 17941 17942 17943 17944 17945 17946 17947 17948 17949 17950 17951 17952 17953 17954 17955 17956 17957 17958 17959 17960 17961 17962 17963 17964 17965 17966 17967 17968 17969 17970 17971 17972 17973 17974 17975 17976 17977 17978 17979 17980 17981 17982 17983 17984 17985 17986 17987 17988 17989 17990 17991 17992 17993 17994 17995 17996 17997 17998 17999 18000 18001 18002 18003 18004 18005 18006 18007 18008 18009 18010 18011 18012 18013 18014 18015 18016 18017 18018 18019 18020 18021 18022 18023 18024 18025 18026 18027 18028 18029 18030 18031 18032 18033 18034 18035 18036 18037 18038 18039 18040 18041 18042 18043 18044 18045 18046 18047 18048 18049 18050 18051 18052 18053 18054 18055 18056 18057 18058 18059 18060 18061 18062 18063 18064 18065 18066 18067 18068 18069 18070 18071 18072 18073 18074 18075 18076 18077 18078 18079 18080 18081 18082 18083 18084 18085 18086 18087 18088 18089 18090 18091 18092 18093 18094 18095 18096 18097 18098 18099 18100 18101 18102 18103 18104 18105 18106 18107 18108 18109 18110 18111 18112 18113 18114 18115 18116 18117 18118 18119 18120 18121 18122 18123 18124 18125 18126 18127 18128 18129 18130 18131 18132 18133 18134 18135 18136 18137 18138 18139 18140 18141 18142 18143 18144 18145 18146 18147 18148 18149 18150 18151 18152 18153 18154 18155 18156 18157 18158 18159 18160 18161 18162 18163 18164 18165 18166 18167 18168 18169 18170 18171 18172 18173 18174 18175 18176 18177 18178 18179 18180 18181 18182 18183 18184 18185 18186 18187 18188 18189 18190 18191 18192 18193 18194 18195 18196 18197 18198 18199 18200 18201 18202 18203 18204 18205 18206 18207 18208 18209 18210 18211 18212 18213 18214 18215 18216 18217 18218 18219 18220 18221 18222 18223 18224 18225 18226 18227 18228 18229 18230 18231 18232 18233 18234 18235 18236 18237 18238 18239 18240 18241 18242 18243 18244 18245 18246 18247 18248 18249 18250 18251 18252 18253 18254 18255 18256 18257 18258 18259 18260 18261 18262 18263 18264 18265 18266 18267 18268 18269 18270 18271 18272 18273 18274 18275 18276 18277 18278 18279 18280 18281 18282 18283 18284 18285 18286 18287 18288 18289 18290 18291 18292 18293 18294 18295 18296 18297 18298 18299 18300 18301 18302 18303 18304 18305 18306 18307 18308 18309 18310 18311 18312 18313 18314 18315 18316 18317 18318 18319 18320 18321 18322 18323 18324 18325 18326 18327 18328 18329 18330 18331 18332 18333 18334 18335 18336 18337 18338 18339 18340 18341 18342 18343 18344 18345 18346 18347 18348 18349 18350 18351 18352 18353 18354 18355 18356 18357 18358 18359 18360 18361 18362 18363 18364 18365 18366 18367 18368 18369 18370 18371 18372 18373 18374 18375 18376 18377 18378 18379 18380 18381 18382 18383 18384 18385 18386 18387 18388 18389 18390 18391 18392 18393 18394 18395 18396 18397 18398 18399 18400 18401 18402 18403 18404 18405 18406 18407 18408 18409 18410 18411 18412 18413 18414 18415 18416 18417 18418 18419 18420 18421 18422 18423 18424 18425 18426 18427 18428 18429 18430 18431 18432 18433 18434 18435 18436 18437 18438 18439 18440 18441 18442 18443 18444 18445 18446 18447 18448 18449 18450 18451 18452 18453 18454 18455 18456 18457 18458 18459 18460 18461 18462 18463 18464 18465 18466 18467 18468 18469 18470 18471 18472 18473 18474 18475 18476 18477 18478 18479 18480 18481 18482 18483 18484 18485 18486 18487 18488 18489 18490 18491 18492 18493 18494 18495 18496 18497 18498 18499 18500 18501 18502 18503 18504 18505 18506 18507 18508 18509 18510 18511 18512 18513 18514 18515 18516 18517 18518 18519 18520 18521 18522 18523 18524 18525 18526 18527 18528 18529 18530 18531 18532 18533 18534 18535 18536 18537 18538 18539 18540 18541 18542 18543 18544 18545 18546 18547 18548 18549 18550 18551 18552 18553 18554 18555 18556 18557 18558 18559 18560 18561 18562 18563 18564 18565 18566 18567 18568 18569 18570 18571 18572 18573 18574 18575 18576 18577 18578 18579 18580 18581 18582 18583 18584 18585 18586 18587 18588 18589 18590 18591 18592 18593 18594 18595 18596 18597 18598 18599 18600 18601 18602 18603 18604 18605 18606 18607 18608 18609 18610 18611 18612 18613 18614 18615 18616 18617 18618 18619 18620 18621 18622 18623 18624 18625 18626 18627 18628 18629 18630 18631 18632 18633 18634 18635 18636 18637 18638 18639 18640 18641 18642 18643 18644 18645 18646 18647 18648 18649 18650 18651 18652 18653 18654 18655 18656 18657 18658 18659 18660 18661 18662 18663 18664 18665 18666 18667 18668 18669 18670 18671 18672 18673 18674 18675 18676 18677 18678 18679 18680 18681 18682 18683 18684 18685 18686 18687 18688 18689 18690 18691 18692 18693 18694 18695 18696 18697 18698 18699 18700 18701 18702 18703 18704 18705 18706 18707 18708 18709 18710 18711 18712 18713 18714 18715 18716 18717 18718 18719 18720 18721 18722 18723 18724 18725 18726 18727 18728 18729 18730 18731 18732 18733 18734 18735 18736 18737 18738 18739 18740 18741 18742 18743 18744 18745 18746 18747 18748 18749 18750 18751 18752 18753 18754 18755 18756 18757 18758 18759 18760 18761 18762 18763 18764 18765 18766 18767 18768 18769 18770 18771 18772 18773 18774 18775 18776 18777 18778 18779 18780 18781 18782 18783 18784 18785 18786 18787 18788 18789 18790 18791 18792 18793 18794 18795 18796 18797 18798 18799 18800 18801 18802 18803 18804 18805 18806 18807 18808 18809 18810 18811 18812 18813 18814 18815 18816 18817 18818 18819 18820 18821 18822 18823 18824 18825 18826 18827 18828 18829 18830 18831 18832 18833 18834 18835 18836 18837 18838 18839 18840 18841 18842 18843 18844 18845 18846 18847 18848 18849 18850 18851 18852 18853 18854 18855 18856 18857 18858 18859 18860 18861 18862 18863 18864 18865 18866 18867 18868 18869 18870 18871 18872 18873 18874 18875 18876 18877 18878 18879 18880 18881 18882 18883 18884 18885 18886 18887 18888 18889 18890 18891 18892 18893 18894 18895 18896 18897 18898 18899 18900 18901 18902 18903 18904 18905 18906 18907 18908 18909 18910 18911 18912 18913 18914 18915 18916 18917 18918 18919 18920 18921 18922 18923 18924 18925 18926 18927 18928 18929 18930 18931 18932 18933 18934 18935 18936 18937 18938 18939 18940 18941 18942 18943 18944 18945 18946 18947 18948 18949 18950 18951 18952 18953 18954 18955 18956 18957 18958 18959 18960 18961 18962 18963 18964 18965 18966 18967 18968 18969 18970 18971 18972 18973 18974 18975 18976 18977 18978 18979 18980 18981 18982 18983 18984 18985 18986 18987 18988 18989 18990 18991 18992 18993 18994 18995 18996 18997 18998 18999 19000 19001 19002 19003 19004 19005 19006 19007 19008 19009 19010 19011 19012 19013 19014 19015 19016 19017 19018 19019 19020 19021 19022 19023 19024 19025 19026 19027 19028 19029 19030 19031 19032 19033 19034 19035 19036 19037 19038 19039 19040 19041 19042 19043 19044 19045 19046 19047 19048 19049 19050 19051 19052 19053 19054 19055 19056 19057 19058 19059 19060 19061 19062 19063 19064 19065 19066 19067 19068 19069 19070 19071 19072 19073 19074 19075 19076 19077 19078 19079 19080 19081 19082 19083 19084 19085 19086 19087 19088 19089 19090 19091 19092 19093 19094 19095 19096 19097 19098 19099 19100 19101 19102 19103 19104 19105 19106 19107 19108 19109 19110 19111 19112 19113 19114 19115 19116 19117 19118 19119 19120 19121 19122 19123 19124 19125 19126 19127 19128 19129 19130 19131 19132 19133 19134 19135 19136 19137 19138 19139 19140 19141 19142 19143 19144 19145 19146 19147 19148 19149 19150 19151 19152 19153 19154 19155 19156 19157 19158 19159 19160 19161 19162 19163 19164 19165 19166 19167 19168 19169 19170 19171 19172 19173 19174 19175 19176 19177 19178 19179 19180 19181 19182 19183 19184 19185 19186 19187 19188 19189 19190 19191 19192 19193 19194 19195 19196 19197 19198 19199 19200 19201 19202 19203 19204 19205 19206 19207 19208 19209 19210 19211 19212 19213 19214 19215 19216 19217 19218 19219 19220 19221 19222 19223 19224 19225 19226 19227 19228 19229 19230 19231 19232 19233 19234 19235 19236 19237 19238 19239 19240 19241 19242 19243 19244 19245 19246 19247 19248 19249 19250 19251 19252 19253 19254 19255 19256 19257 19258 19259 19260 19261 19262 19263 19264 19265 19266 19267 19268 19269 19270 19271 19272 19273 19274 19275 19276 19277 19278 19279 19280 19281 19282 19283 19284 19285 19286 19287 19288 19289 19290 19291 19292 19293 19294 19295 19296 19297 19298 19299 19300 19301 19302 19303 19304 19305 19306 19307 19308 19309 19310 19311 19312 19313 19314 19315 19316 19317 19318 19319 19320 19321 19322 19323 19324 19325 19326 19327 19328 19329 19330 19331 19332 19333 19334 19335 19336 19337 19338 19339 19340 19341 19342 19343 19344 19345 19346 19347 19348 19349 19350 19351 19352 19353 19354 19355 19356 19357 19358 19359 19360 19361 19362 19363 19364 19365 19366 19367 19368 19369 19370 19371 19372 19373 19374 19375 19376 19377 19378 19379 19380 19381 19382 19383 19384 19385 19386 19387 19388 19389 19390 19391 19392 19393 19394 19395 19396 19397 19398 19399 19400 19401 19402 19403 19404 19405 19406 19407 19408 19409 19410 19411 19412 19413 19414 19415 19416 19417 19418 19419 19420 19421 19422 19423 19424 19425 19426 19427 19428 19429 19430 19431 19432 19433 19434 19435 19436 19437 19438 19439 19440 19441 19442 19443 19444 19445 19446 19447 19448 19449 19450 19451 19452 19453 19454 19455 19456 19457 19458 19459 19460 19461 19462 19463 19464 19465 19466 19467 19468 19469 19470 19471 19472 19473 19474 19475 19476 19477 19478 19479 19480 19481 19482 19483 19484 19485 19486 19487 19488 19489 19490 19491 19492 19493 19494 19495 19496 19497 19498 19499 19500 19501 19502 19503 19504 19505 19506 19507 19508 19509 19510 19511 19512 19513 19514 19515 19516 19517 19518 19519 19520 19521 19522 19523 19524 19525 19526 19527 19528 19529 19530 19531 19532 19533 19534 19535 19536 19537 19538 19539 19540 19541 19542 19543 19544 19545 19546 19547 19548 19549 19550 19551 19552 19553 19554 19555 19556 19557 19558 19559 19560 19561 19562 19563 19564 19565 19566 19567 19568 19569 19570 19571 19572 19573 19574 19575 19576 19577 19578 19579 19580 19581 19582 19583 19584 19585 19586 19587 19588 19589 19590 19591 19592 19593 19594 19595 19596 19597 19598 19599 19600 19601 19602 19603 19604 19605 19606 19607 19608 19609 19610 19611 19612 19613 19614 19615 19616 19617 19618 19619 19620 19621 19622 19623 19624 19625 19626 19627 19628 19629 19630 19631 19632 19633 19634 19635 19636 19637 19638 19639 19640 19641 19642 19643 19644 19645 19646 19647 19648 19649 19650 19651 19652 19653 19654 19655 19656 19657 19658 19659 19660 19661 19662 19663 19664 19665 19666 19667 19668 19669 19670 19671 19672 19673 19674 19675 19676 19677 19678 19679 19680 19681 19682 19683 19684 19685 19686 19687 19688 19689 19690 19691 19692 19693 19694 19695 19696 19697 19698 19699 19700 19701 19702 19703 19704 19705 19706 19707 19708 19709 19710 19711 19712 19713 19714 19715 19716 19717 19718 19719 19720 19721 19722 19723 19724 19725 19726 19727 19728 19729 19730 19731 19732 19733 19734 19735 19736 19737 19738 19739 19740 19741 19742 19743 19744 19745 19746 19747 19748 19749 19750 19751 19752 19753 19754 19755 19756 19757 19758 19759 19760 19761 19762 19763 19764 19765 19766 19767 19768 19769 19770 19771 19772 19773 19774 19775 19776 19777 19778 19779 19780 19781 19782 19783 19784 19785 19786 19787 19788 19789 19790 19791 19792 19793 19794 19795 19796 19797 19798 19799 19800 19801 19802 19803 19804 19805 19806 19807 19808 19809 19810 19811 19812 19813 19814 19815 19816 19817 19818 19819 19820 19821 19822 19823 19824 19825 19826 19827 19828 19829 19830 19831 19832 19833 19834 19835 19836 19837 19838 19839 19840 19841 19842 19843 19844 19845 19846 19847 19848 19849 19850 19851 19852 19853 19854 19855 19856 19857 19858 19859 19860 19861 19862 19863 19864 19865 19866 19867 19868 19869 19870 19871 19872 19873 19874 19875 19876 19877 19878 19879 19880 19881 19882 19883 19884 19885 19886 19887 19888 19889 19890 19891 19892 19893 19894 19895 19896 19897 19898 19899 19900 19901 19902 19903 19904 19905 19906 19907 19908 19909 19910 19911 19912 19913 19914 19915 19916 19917 19918 19919 19920 19921 19922 19923 19924 19925 19926 19927 19928 19929 19930 19931 19932 19933 19934 19935 19936 19937 19938 19939 19940 19941 19942 19943 19944 19945 19946 19947 19948 19949 19950 19951 19952 19953 19954 19955 19956 19957 19958 19959 19960 19961 19962 19963 19964 19965 19966 19967 19968 19969 19970 19971 19972 19973 19974 19975 19976 19977 19978 19979 19980 19981 19982 19983 19984 19985 19986 19987 19988 19989 19990 19991 19992 19993 19994 19995 19996 19997 19998 19999 20000 20001 20002 20003 20004 20005 20006 20007 20008 20009 20010 20011 20012 20013 20014 20015 20016 20017 20018 20019 20020 20021 20022 20023 20024 20025 20026 20027 20028 20029 20030 20031 20032 20033 20034 20035 20036 20037 20038 20039 20040 20041 20042 20043 20044 20045 20046 20047 20048 20049 20050 20051 20052 20053 20054 20055 20056 20057 20058 20059 20060 20061 20062 20063 20064 20065 20066 20067 20068 20069 20070 20071 20072 20073 20074 20075 20076 20077 20078 20079 20080 20081 20082 20083 20084 20085 20086 20087 20088 20089 20090 20091 20092 20093 20094 20095 20096 20097 20098 20099 20100 20101 20102 20103 20104 20105 20106 20107 20108 20109 20110 20111 20112 20113 20114 20115 20116 20117 20118 20119 20120 20121 20122 20123 20124 20125 20126 20127 20128 20129 20130 20131 20132 20133 20134 20135 20136 20137 20138 20139 20140 20141 20142 20143 20144 20145 20146 20147 20148 20149 20150 20151 20152 20153 20154 20155 20156 20157 20158 20159 20160 20161 20162 20163 20164 20165 20166 20167 20168 20169 20170 20171 20172 20173 20174 20175 20176 20177 20178 20179 20180 20181 20182 20183 20184 20185 20186 20187 20188 20189 20190 20191 20192 20193 20194 20195 20196 20197 20198 20199 20200 20201 20202 20203 20204 20205 20206 20207 20208 20209 20210 20211 20212 20213 20214 20215 20216 20217 20218 20219 20220 20221 20222 20223 20224 20225 20226 20227 20228 20229 20230 20231 20232 20233 20234 20235 20236 20237 20238 20239 20240 20241 20242 20243 20244 20245 20246 20247 20248 20249 20250 20251 20252 20253 20254 20255 20256 20257 20258 20259 20260 20261 20262 20263 20264 20265 20266 20267 20268 20269 20270 20271 20272 20273 20274 20275 20276 20277 20278 20279 20280 20281 20282 20283 20284 20285 20286 20287 20288 20289 20290 20291 20292 20293 20294 20295 20296 20297 20298 20299 20300 20301 20302 20303 20304 20305 20306 20307 20308 20309 20310 20311 20312 20313 20314 20315 20316 20317 20318 20319 20320 20321 20322 20323 20324 20325 20326 20327 20328 20329 20330 20331 20332 20333 20334 20335 20336 20337 20338 20339 20340 20341 20342 20343 20344 20345 20346 20347 20348 20349 20350 20351 20352 20353 20354 20355 20356 20357 20358 20359 20360 20361 20362 20363 20364 20365 20366 20367 20368 20369 20370 20371 20372 20373 20374 20375 20376 20377 20378 20379 20380 20381 20382 20383 20384 20385 20386 20387 20388 20389 20390 20391 20392 20393 20394 20395 20396 20397 20398 20399 20400 20401 20402 20403 20404 20405 20406 20407 20408 20409 20410 20411 20412 20413 20414 20415 20416 20417 20418 20419 20420 20421 20422 20423 20424 20425 20426 20427 20428 20429 20430 20431 20432 20433 20434 20435 20436 20437 20438 20439 20440 20441 20442 20443 20444 20445 20446 20447 20448 20449 20450 20451 20452 20453 20454 20455 20456 20457 20458 20459 20460 20461 20462 20463 20464 20465 20466 20467 20468 20469 20470 20471 20472 20473 20474 20475 20476 20477 20478 20479 20480 20481 20482 20483 20484 20485 20486 20487 20488 20489 20490 20491 20492 20493 20494 20495 20496 20497 20498 20499 20500 20501 20502 20503 20504 20505 20506 20507 20508 20509 20510 20511 20512 20513 20514 20515 20516 20517 20518 20519 20520 20521 20522 20523 20524 20525 20526 20527 20528 20529 20530 20531 20532 20533 20534 20535 20536 20537 20538 20539 20540 20541 20542 20543 20544 20545 20546 20547 20548 20549 20550 20551 20552 20553 20554 20555 20556 20557 20558 20559 20560 20561 20562 20563 20564 20565 20566 20567 20568 20569 20570 20571 20572 20573 20574 20575 20576 20577 20578 20579 20580 20581 20582 20583 20584 20585 20586 20587 20588 20589 20590 20591 20592 20593 20594 20595 20596 20597 20598 20599 20600 20601 20602 20603 20604 20605 20606 20607 20608 20609 20610 20611 20612 20613 20614 20615 20616 20617 20618 20619 20620 20621 20622 20623 20624 20625 20626 20627 20628 20629 20630 20631 20632 20633 20634 20635 20636 20637 20638 20639 20640 20641 20642 20643 20644 20645 20646 20647 20648 20649 20650 20651 20652 20653 20654 20655 20656 20657 20658 20659 20660 20661 20662 20663 20664 20665 20666 20667 20668 20669 20670 20671 20672 20673 20674 20675 20676 20677 20678 20679 20680 20681 20682 20683 20684 20685 20686 20687 20688 20689 20690 20691 20692 20693 20694 20695 20696 20697 20698 20699 20700 20701 20702 20703 20704 20705 20706 20707 20708 20709 20710 20711 20712 20713 20714 20715 20716 20717 20718 20719 20720 20721 20722 20723 20724 20725 20726 20727 20728 20729 20730 20731 20732 20733 20734 20735 20736 20737 20738 20739 20740 20741 20742 20743 20744 20745 20746 20747 20748 20749 20750 20751 20752 20753 20754 20755 20756 20757 20758 20759 20760 20761 20762 20763 20764 20765 20766 20767 20768 20769 20770 20771 20772 20773 20774 20775 20776 20777 20778 20779 20780 20781 20782 20783 20784 20785 20786 20787 20788 20789 20790 20791 20792 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* DCM/DFA Reporting And Trafficking API
*
* Manages your DoubleClick Campaign Manager ad campaigns and reports.
*
* @example
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* @namespace dfareporting
* @type {Function}
* @version v2.6
* @variation v2.6
* @param {object=} options Options for Dfareporting
*/
function Dfareporting(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.accountActiveAdSummaries = {
/**
* dfareporting.accountActiveAdSummaries.get
*
* @desc Gets the account's active ad summary by account ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Account ID.
* summaryAccountId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.accountActiveAdSummaries.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.accountActiveAdSummaries.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {string} params.summaryAccountId Account ID.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/accountActiveAdSummaries/{summaryAccountId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'summaryAccountId'],
pathParams: ['profileId', 'summaryAccountId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.accountPermissionGroups = {
/**
* dfareporting.accountPermissionGroups.get
*
* @desc Gets one account permission group by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Account permission group ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.accountPermissionGroups.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.accountPermissionGroups.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Account permission group ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/accountPermissionGroups/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.accountPermissionGroups.list
*
* @desc Retrieves the list of account permission groups.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.accountPermissionGroups.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.accountPermissionGroups.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/accountPermissionGroups',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.accountPermissions = {
/**
* dfareporting.accountPermissions.get
*
* @desc Gets one account permission by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Account permission ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.accountPermissions.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.accountPermissions.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Account permission ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/accountPermissions/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.accountPermissions.list
*
* @desc Retrieves the list of account permissions.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.accountPermissions.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.accountPermissions.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/accountPermissions',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.accountUserProfiles = {
/**
* dfareporting.accountUserProfiles.get
*
* @desc Gets one account user profile by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // User profile ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.accountUserProfiles.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.accountUserProfiles.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id User profile ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/accountUserProfiles/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.accountUserProfiles.insert
*
* @desc Inserts a new account user profile.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.accountUserProfiles.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.accountUserProfiles.insert
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).AccountUserProfile} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/accountUserProfiles',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.accountUserProfiles.list
*
* @desc Retrieves a list of account user profiles, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var accountUserProfilesPage = response['accountUserProfiles'];
* if (!accountUserProfilesPage) {
* return;
* }
* for (var i = 0; i < accountUserProfilesPage.length; i++) {
* // TODO: Change code below to process each resource in `accountUserProfilesPage`:
* console.log(JSON.stringify(accountUserProfilesPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.accountUserProfiles.list(request, handlePage);
* }
* };
*
* dfareporting.accountUserProfiles.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.accountUserProfiles.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {boolean=} params.active Select only active user profiles.
* @param {string=} params.ids Select only user profiles with these IDs.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for objects by name, ID or email. Wildcards (*) are allowed. For example, "user profile*2015" will return objects with names like "user profile June 2015", "user profile April 2015", or simply "user profile 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "user profile" will match objects with name "my user profile", "user profile 2015", or simply "user profile".
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {string=} params.subaccountId Select only user profiles with the specified subaccount ID.
* @param {string=} params.userRoleId Select only user profiles with the specified user role ID.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/accountUserProfiles',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.accountUserProfiles.patch
*
* @desc Updates an existing account user profile. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // User profile ID.
* id: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body. Only added properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.accountUserProfiles.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.accountUserProfiles.patch
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id User profile ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).AccountUserProfile} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/accountUserProfiles',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.accountUserProfiles.update
*
* @desc Updates an existing account user profile.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.accountUserProfiles.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.accountUserProfiles.update
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).AccountUserProfile} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/accountUserProfiles',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.accounts = {
/**
* dfareporting.accounts.get
*
* @desc Gets one account by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Account ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.accounts.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.accounts.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Account ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/accounts/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.accounts.list
*
* @desc Retrieves the list of accounts, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var accountsPage = response['accounts'];
* if (!accountsPage) {
* return;
* }
* for (var i = 0; i < accountsPage.length; i++) {
* // TODO: Change code below to process each resource in `accountsPage`:
* console.log(JSON.stringify(accountsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.accounts.list(request, handlePage);
* }
* };
*
* dfareporting.accounts.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.accounts.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {boolean=} params.active Select only active accounts. Don't set this field to select both active and non-active accounts.
* @param {string=} params.ids Select only accounts with these IDs.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, "account*2015" will return objects with names like "account June 2015", "account April 2015", or simply "account 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "account" will match objects with name "my account", "account 2015", or simply "account".
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/accounts',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.accounts.patch
*
* @desc Updates an existing account. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Account ID.
* id: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body. Only added properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.accounts.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.accounts.patch
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Account ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).Account} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/accounts',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.accounts.update
*
* @desc Updates an existing account.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.accounts.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.accounts.update
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).Account} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/accounts',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.ads = {
/**
* dfareporting.ads.get
*
* @desc Gets one ad by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Ad ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.ads.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.ads.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Ad ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/ads/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.ads.insert
*
* @desc Inserts a new ad.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.ads.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.ads.insert
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).Ad} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/ads',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.ads.list
*
* @desc Retrieves a list of ads, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var adsPage = response['ads'];
* if (!adsPage) {
* return;
* }
* for (var i = 0; i < adsPage.length; i++) {
* // TODO: Change code below to process each resource in `adsPage`:
* console.log(JSON.stringify(adsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.ads.list(request, handlePage);
* }
* };
*
* dfareporting.ads.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.ads.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {boolean=} params.active Select only active ads.
* @param {string=} params.advertiserId Select only ads with this advertiser ID.
* @param {boolean=} params.archived Select only archived ads.
* @param {string=} params.audienceSegmentIds Select only ads with these audience segment IDs.
* @param {string=} params.campaignIds Select only ads with these campaign IDs.
* @param {string=} params.compatibility Select default ads with the specified compatibility. Applicable when type is AD_SERVING_DEFAULT_AD. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop or on mobile devices for regular or interstitial ads, respectively. APP and APP_INTERSTITIAL are for rendering in mobile apps. IN_STREAM_VIDEO refers to rendering an in-stream video ads developed with the VAST standard.
* @param {string=} params.creativeIds Select only ads with these creative IDs assigned.
* @param {string=} params.creativeOptimizationConfigurationIds Select only ads with these creative optimization configuration IDs.
* @param {string=} params.creativeType Select only ads with the specified creativeType.
* @param {boolean=} params.dynamicClickTracker Select only dynamic click trackers. Applicable when type is AD_SERVING_CLICK_TRACKER. If true, select dynamic click trackers. If false, select static click trackers. Leave unset to select both.
* @param {string=} params.ids Select only ads with these IDs.
* @param {string=} params.landingPageIds Select only ads with these landing page IDs.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.overriddenEventTagId Select only ads with this event tag override ID.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string=} params.placementIds Select only ads with these placement IDs assigned.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.remarketingListIds Select only ads whose list targeting expression use these remarketing list IDs.
* @param {string=} params.searchString Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, "ad*2015" will return objects with names like "ad June 2015", "ad April 2015", or simply "ad 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "ad" will match objects with name "my ad", "ad 2015", or simply "ad".
* @param {string=} params.sizeIds Select only ads with these size IDs.
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {boolean=} params.sslCompliant Select only ads that are SSL-compliant.
* @param {boolean=} params.sslRequired Select only ads that require SSL.
* @param {string=} params.type Select only ads with these types.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/ads',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.ads.patch
*
* @desc Updates an existing ad. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Ad ID.
* id: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body. Only added properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.ads.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.ads.patch
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Ad ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).Ad} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/ads',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.ads.update
*
* @desc Updates an existing ad.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.ads.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.ads.update
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).Ad} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/ads',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.advertiserGroups = {
/**
* dfareporting.advertiserGroups.delete
*
* @desc Deletes an existing advertiser group.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Advertiser group ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.advertiserGroups.delete(request, function(err) {
* if (err) {
* console.log(err);
* return;
* }
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.advertiserGroups.delete
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Advertiser group ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/advertiserGroups/{id}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.advertiserGroups.get
*
* @desc Gets one advertiser group by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Advertiser group ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.advertiserGroups.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.advertiserGroups.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Advertiser group ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/advertiserGroups/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.advertiserGroups.insert
*
* @desc Inserts a new advertiser group.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.advertiserGroups.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.advertiserGroups.insert
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).AdvertiserGroup} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/advertiserGroups',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.advertiserGroups.list
*
* @desc Retrieves a list of advertiser groups, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var advertiserGroupsPage = response['advertiserGroups'];
* if (!advertiserGroupsPage) {
* return;
* }
* for (var i = 0; i < advertiserGroupsPage.length; i++) {
* // TODO: Change code below to process each resource in `advertiserGroupsPage`:
* console.log(JSON.stringify(advertiserGroupsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.advertiserGroups.list(request, handlePage);
* }
* };
*
* dfareporting.advertiserGroups.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.advertiserGroups.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string=} params.ids Select only advertiser groups with these IDs.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, "advertiser*2015" will return objects with names like "advertiser group June 2015", "advertiser group April 2015", or simply "advertiser group 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "advertisergroup" will match objects with name "my advertisergroup", "advertisergroup 2015", or simply "advertisergroup".
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/advertiserGroups',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.advertiserGroups.patch
*
* @desc Updates an existing advertiser group. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Advertiser group ID.
* id: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body. Only added properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.advertiserGroups.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.advertiserGroups.patch
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Advertiser group ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).AdvertiserGroup} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/advertiserGroups',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.advertiserGroups.update
*
* @desc Updates an existing advertiser group.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.advertiserGroups.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.advertiserGroups.update
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).AdvertiserGroup} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/advertiserGroups',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.advertisers = {
/**
* dfareporting.advertisers.get
*
* @desc Gets one advertiser by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Advertiser ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.advertisers.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.advertisers.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Advertiser ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/advertisers/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.advertisers.insert
*
* @desc Inserts a new advertiser.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.advertisers.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.advertisers.insert
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).Advertiser} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/advertisers',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.advertisers.list
*
* @desc Retrieves a list of advertisers, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var advertisersPage = response['advertisers'];
* if (!advertisersPage) {
* return;
* }
* for (var i = 0; i < advertisersPage.length; i++) {
* // TODO: Change code below to process each resource in `advertisersPage`:
* console.log(JSON.stringify(advertisersPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.advertisers.list(request, handlePage);
* }
* };
*
* dfareporting.advertisers.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.advertisers.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string=} params.advertiserGroupIds Select only advertisers with these advertiser group IDs.
* @param {string=} params.floodlightConfigurationIds Select only advertisers with these floodlight configuration IDs.
* @param {string=} params.ids Select only advertisers with these IDs.
* @param {boolean=} params.includeAdvertisersWithoutGroupsOnly Select only advertisers which do not belong to any advertiser group.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {boolean=} params.onlyParent Select only advertisers which use another advertiser's floodlight configuration.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, "advertiser*2015" will return objects with names like "advertiser June 2015", "advertiser April 2015", or simply "advertiser 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "advertiser" will match objects with name "my advertiser", "advertiser 2015", or simply "advertiser".
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {string=} params.status Select only advertisers with the specified status.
* @param {string=} params.subaccountId Select only advertisers with these subaccount IDs.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/advertisers',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.advertisers.patch
*
* @desc Updates an existing advertiser. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Advertiser ID.
* id: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body. Only added properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.advertisers.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.advertisers.patch
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Advertiser ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).Advertiser} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/advertisers',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.advertisers.update
*
* @desc Updates an existing advertiser.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.advertisers.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.advertisers.update
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).Advertiser} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/advertisers',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.browsers = {
/**
* dfareporting.browsers.list
*
* @desc Retrieves a list of browsers.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.browsers.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.browsers.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/browsers',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.campaignCreativeAssociations = {
/**
* dfareporting.campaignCreativeAssociations.insert
*
* @desc Associates a creative with the specified campaign. This method creates a default ad with dimensions matching the creative in the campaign if such a default ad does not exist already.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Campaign ID in this association.
* campaignId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.campaignCreativeAssociations.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.campaignCreativeAssociations.insert
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.campaignId Campaign ID in this association.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).CampaignCreativeAssociation} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/campaigns/{campaignId}/campaignCreativeAssociations',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId', 'campaignId'],
pathParams: ['campaignId', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.campaignCreativeAssociations.list
*
* @desc Retrieves the list of creative IDs associated with the specified campaign. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Campaign ID in this association.
* campaignId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var campaignCreativeAssociationsPage = response['campaignCreativeAssociations'];
* if (!campaignCreativeAssociationsPage) {
* return;
* }
* for (var i = 0; i < campaignCreativeAssociationsPage.length; i++) {
* // TODO: Change code below to process each resource in `campaignCreativeAssociationsPage`:
* console.log(JSON.stringify(campaignCreativeAssociationsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.campaignCreativeAssociations.list(request, handlePage);
* }
* };
*
* dfareporting.campaignCreativeAssociations.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.campaignCreativeAssociations.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.campaignId Campaign ID in this association.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/campaigns/{campaignId}/campaignCreativeAssociations',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'campaignId'],
pathParams: ['campaignId', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.campaigns = {
/**
* dfareporting.campaigns.get
*
* @desc Gets one campaign by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Campaign ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.campaigns.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.campaigns.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Campaign ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/campaigns/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.campaigns.insert
*
* @desc Inserts a new campaign.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Default landing page name for this new campaign. Must be less than 256 characters long.
* defaultLandingPageName: '', // TODO: Update placeholder value.
*
* // Default landing page URL for this new campaign.
* defaultLandingPageUrl: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.campaigns.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.campaigns.insert
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.defaultLandingPageName Default landing page name for this new campaign. Must be less than 256 characters long.
* @param {string} params.defaultLandingPageUrl Default landing page URL for this new campaign.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).Campaign} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/campaigns',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId', 'defaultLandingPageName', 'defaultLandingPageUrl'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.campaigns.list
*
* @desc Retrieves a list of campaigns, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var campaignsPage = response['campaigns'];
* if (!campaignsPage) {
* return;
* }
* for (var i = 0; i < campaignsPage.length; i++) {
* // TODO: Change code below to process each resource in `campaignsPage`:
* console.log(JSON.stringify(campaignsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.campaigns.list(request, handlePage);
* }
* };
*
* dfareporting.campaigns.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.campaigns.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string=} params.advertiserGroupIds Select only campaigns whose advertisers belong to these advertiser groups.
* @param {string=} params.advertiserIds Select only campaigns that belong to these advertisers.
* @param {boolean=} params.archived Select only archived campaigns. Don't set this field to select both archived and non-archived campaigns.
* @param {boolean=} params.atLeastOneOptimizationActivity Select only campaigns that have at least one optimization activity.
* @param {string=} params.excludedIds Exclude campaigns with these IDs.
* @param {string=} params.ids Select only campaigns with these IDs.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.overriddenEventTagId Select only campaigns that have overridden this event tag ID.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for campaigns by name or ID. Wildcards (*) are allowed. For example, "campaign*2015" will return campaigns with names like "campaign June 2015", "campaign April 2015", or simply "campaign 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "campaign" will match campaigns with name "my campaign", "campaign 2015", or simply "campaign".
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {string=} params.subaccountId Select only campaigns that belong to this subaccount.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/campaigns',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.campaigns.patch
*
* @desc Updates an existing campaign. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Campaign ID.
* id: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body. Only added properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.campaigns.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.campaigns.patch
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Campaign ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).Campaign} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/campaigns',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.campaigns.update
*
* @desc Updates an existing campaign.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.campaigns.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.campaigns.update
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).Campaign} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/campaigns',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.changeLogs = {
/**
* dfareporting.changeLogs.get
*
* @desc Gets one change log by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Change log ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.changeLogs.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.changeLogs.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Change log ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/changeLogs/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.changeLogs.list
*
* @desc Retrieves a list of change logs. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var changeLogsPage = response['changeLogs'];
* if (!changeLogsPage) {
* return;
* }
* for (var i = 0; i < changeLogsPage.length; i++) {
* // TODO: Change code below to process each resource in `changeLogsPage`:
* console.log(JSON.stringify(changeLogsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.changeLogs.list(request, handlePage);
* }
* };
*
* dfareporting.changeLogs.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.changeLogs.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string=} params.action Select only change logs with the specified action.
* @param {string=} params.ids Select only change logs with these IDs.
* @param {string=} params.maxChangeTime Select only change logs whose change time is before the specified maxChangeTime.The time should be formatted as an RFC3339 date/time string. For example, for 10:54 PM on July 18th, 2015, in the America/New York time zone, the format is "2015-07-18T22:54:00-04:00". In other words, the year, month, day, the letter T, the hour (24-hour clock system), minute, second, and then the time zone offset.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.minChangeTime Select only change logs whose change time is before the specified minChangeTime.The time should be formatted as an RFC3339 date/time string. For example, for 10:54 PM on July 18th, 2015, in the America/New York time zone, the format is "2015-07-18T22:54:00-04:00". In other words, the year, month, day, the letter T, the hour (24-hour clock system), minute, second, and then the time zone offset.
* @param {string=} params.objectIds Select only change logs with these object IDs.
* @param {string=} params.objectType Select only change logs with the specified object type.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Select only change logs whose object ID, user name, old or new values match the search string.
* @param {string=} params.userProfileIds Select only change logs with these user profile IDs.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/changeLogs',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.cities = {
/**
* dfareporting.cities.list
*
* @desc Retrieves a list of cities, possibly filtered.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.cities.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.cities.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string=} params.countryDartIds Select only cities from these countries.
* @param {string=} params.dartIds Select only cities with these DART IDs.
* @param {string=} params.namePrefix Select only cities with names starting with this prefix.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.regionDartIds Select only cities from these regions.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/cities',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.connectionTypes = {
/**
* dfareporting.connectionTypes.get
*
* @desc Gets one connection type by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Connection type ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.connectionTypes.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.connectionTypes.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Connection type ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/connectionTypes/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.connectionTypes.list
*
* @desc Retrieves a list of connection types.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.connectionTypes.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.connectionTypes.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/connectionTypes',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.contentCategories = {
/**
* dfareporting.contentCategories.delete
*
* @desc Deletes an existing content category.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Content category ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.contentCategories.delete(request, function(err) {
* if (err) {
* console.log(err);
* return;
* }
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.contentCategories.delete
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Content category ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/contentCategories/{id}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.contentCategories.get
*
* @desc Gets one content category by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Content category ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.contentCategories.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.contentCategories.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Content category ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/contentCategories/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.contentCategories.insert
*
* @desc Inserts a new content category.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.contentCategories.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.contentCategories.insert
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).ContentCategory} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/contentCategories',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.contentCategories.list
*
* @desc Retrieves a list of content categories, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var contentCategoriesPage = response['contentCategories'];
* if (!contentCategoriesPage) {
* return;
* }
* for (var i = 0; i < contentCategoriesPage.length; i++) {
* // TODO: Change code below to process each resource in `contentCategoriesPage`:
* console.log(JSON.stringify(contentCategoriesPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.contentCategories.list(request, handlePage);
* }
* };
*
* dfareporting.contentCategories.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.contentCategories.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string=} params.ids Select only content categories with these IDs.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, "contentcategory*2015" will return objects with names like "contentcategory June 2015", "contentcategory April 2015", or simply "contentcategory 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "contentcategory" will match objects with name "my contentcategory", "contentcategory 2015", or simply "contentcategory".
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/contentCategories',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.contentCategories.patch
*
* @desc Updates an existing content category. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Content category ID.
* id: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body. Only added properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.contentCategories.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.contentCategories.patch
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Content category ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).ContentCategory} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/contentCategories',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.contentCategories.update
*
* @desc Updates an existing content category.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.contentCategories.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.contentCategories.update
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).ContentCategory} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/contentCategories',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.conversions = {
/**
* dfareporting.conversions.batchinsert
*
* @desc Inserts conversions.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.conversions.batchinsert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/ddmconversions
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.conversions.batchinsert
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).ConversionsBatchInsertRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
batchinsert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/conversions/batchinsert',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.countries = {
/**
* dfareporting.countries.get
*
* @desc Gets one country by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Country DART ID.
* dartId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.countries.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.countries.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.dartId Country DART ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/countries/{dartId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'dartId'],
pathParams: ['dartId', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.countries.list
*
* @desc Retrieves a list of countries.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.countries.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.countries.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/countries',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.creativeAssets = {
/**
* dfareporting.creativeAssets.insert
*
* @desc Inserts a new creative asset.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Advertiser ID of this creative. This is a required field.
* advertiserId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* media: {
* // TODO: Add desired media content for upload. See:
* // https://github.com/google/google-api-nodejs-client#media-uploads
* mimeType: '', // See https://www.w3.org/Protocols/rfc1341/4_Content-Type.html
* body: {}
* },
*
* auth: authClient
* };
*
* dfareporting.creativeAssets.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creativeAssets.insert
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.advertiserId Advertiser ID of this creative. This is a required field.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} params.resource Media resource metadata
* @param {object} params.media Media object
* @param {string} params.media.mimeType Media mime-type
* @param {string|object} params.media.body Media body contents
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/creativeAssets/{advertiserId}/creativeAssets',
method: 'POST'
}, options),
params: params,
mediaUrl: 'https://www.googleapis.com/upload/dfareporting/v2.6/userprofiles/{profileId}/creativeAssets/{advertiserId}/creativeAssets',
requiredParams: ['profileId', 'advertiserId'],
pathParams: ['advertiserId', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.creativeFieldValues = {
/**
* dfareporting.creativeFieldValues.delete
*
* @desc Deletes an existing creative field value.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Creative field ID for this creative field value.
* creativeFieldId: '', // TODO: Update placeholder value.
*
* // Creative Field Value ID
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.creativeFieldValues.delete(request, function(err) {
* if (err) {
* console.log(err);
* return;
* }
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creativeFieldValues.delete
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.creativeFieldId Creative field ID for this creative field value.
* @param {string} params.id Creative Field Value ID
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues/{id}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['profileId', 'creativeFieldId', 'id'],
pathParams: ['creativeFieldId', 'id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.creativeFieldValues.get
*
* @desc Gets one creative field value by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Creative field ID for this creative field value.
* creativeFieldId: '', // TODO: Update placeholder value.
*
* // Creative Field Value ID
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.creativeFieldValues.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creativeFieldValues.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.creativeFieldId Creative field ID for this creative field value.
* @param {string} params.id Creative Field Value ID
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'creativeFieldId', 'id'],
pathParams: ['creativeFieldId', 'id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.creativeFieldValues.insert
*
* @desc Inserts a new creative field value.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Creative field ID for this creative field value.
* creativeFieldId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.creativeFieldValues.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creativeFieldValues.insert
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.creativeFieldId Creative field ID for this creative field value.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).CreativeFieldValue} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId', 'creativeFieldId'],
pathParams: ['creativeFieldId', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.creativeFieldValues.list
*
* @desc Retrieves a list of creative field values, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Creative field ID for this creative field value.
* creativeFieldId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var creativeFieldValuesPage = response['creativeFieldValues'];
* if (!creativeFieldValuesPage) {
* return;
* }
* for (var i = 0; i < creativeFieldValuesPage.length; i++) {
* // TODO: Change code below to process each resource in `creativeFieldValuesPage`:
* console.log(JSON.stringify(creativeFieldValuesPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.creativeFieldValues.list(request, handlePage);
* }
* };
*
* dfareporting.creativeFieldValues.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creativeFieldValues.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.creativeFieldId Creative field ID for this creative field value.
* @param {string=} params.ids Select only creative field values with these IDs.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for creative field values by their values. Wildcards (e.g. *) are not allowed.
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'creativeFieldId'],
pathParams: ['creativeFieldId', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.creativeFieldValues.patch
*
* @desc Updates an existing creative field value. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Creative field ID for this creative field value.
* creativeFieldId: '', // TODO: Update placeholder value.
*
* // Creative Field Value ID
* id: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body. Only added properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.creativeFieldValues.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creativeFieldValues.patch
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.creativeFieldId Creative field ID for this creative field value.
* @param {string} params.id Creative Field Value ID
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).CreativeFieldValue} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'creativeFieldId', 'id'],
pathParams: ['creativeFieldId', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.creativeFieldValues.update
*
* @desc Updates an existing creative field value.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Creative field ID for this creative field value.
* creativeFieldId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.creativeFieldValues.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creativeFieldValues.update
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.creativeFieldId Creative field ID for this creative field value.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).CreativeFieldValue} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId', 'creativeFieldId'],
pathParams: ['creativeFieldId', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.creativeFields = {
/**
* dfareporting.creativeFields.delete
*
* @desc Deletes an existing creative field.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Creative Field ID
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.creativeFields.delete(request, function(err) {
* if (err) {
* console.log(err);
* return;
* }
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creativeFields.delete
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Creative Field ID
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/creativeFields/{id}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.creativeFields.get
*
* @desc Gets one creative field by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Creative Field ID
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.creativeFields.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creativeFields.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Creative Field ID
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/creativeFields/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.creativeFields.insert
*
* @desc Inserts a new creative field.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.creativeFields.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creativeFields.insert
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).CreativeField} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/creativeFields',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.creativeFields.list
*
* @desc Retrieves a list of creative fields, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var creativeFieldsPage = response['creativeFields'];
* if (!creativeFieldsPage) {
* return;
* }
* for (var i = 0; i < creativeFieldsPage.length; i++) {
* // TODO: Change code below to process each resource in `creativeFieldsPage`:
* console.log(JSON.stringify(creativeFieldsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.creativeFields.list(request, handlePage);
* }
* };
*
* dfareporting.creativeFields.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creativeFields.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string=} params.advertiserIds Select only creative fields that belong to these advertisers.
* @param {string=} params.ids Select only creative fields with these IDs.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for creative fields by name or ID. Wildcards (*) are allowed. For example, "creativefield*2015" will return creative fields with names like "creativefield June 2015", "creativefield April 2015", or simply "creativefield 2015". Most of the searches also add wild-cards implicitly at the start and the end of the search string. For example, a search string of "creativefield" will match creative fields with the name "my creativefield", "creativefield 2015", or simply "creativefield".
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/creativeFields',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.creativeFields.patch
*
* @desc Updates an existing creative field. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Creative Field ID
* id: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body. Only added properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.creativeFields.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creativeFields.patch
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Creative Field ID
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).CreativeField} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/creativeFields',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.creativeFields.update
*
* @desc Updates an existing creative field.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.creativeFields.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creativeFields.update
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).CreativeField} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/creativeFields',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.creativeGroups = {
/**
* dfareporting.creativeGroups.get
*
* @desc Gets one creative group by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Creative group ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.creativeGroups.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creativeGroups.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Creative group ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/creativeGroups/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.creativeGroups.insert
*
* @desc Inserts a new creative group.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.creativeGroups.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creativeGroups.insert
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).CreativeGroup} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/creativeGroups',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.creativeGroups.list
*
* @desc Retrieves a list of creative groups, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var creativeGroupsPage = response['creativeGroups'];
* if (!creativeGroupsPage) {
* return;
* }
* for (var i = 0; i < creativeGroupsPage.length; i++) {
* // TODO: Change code below to process each resource in `creativeGroupsPage`:
* console.log(JSON.stringify(creativeGroupsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.creativeGroups.list(request, handlePage);
* }
* };
*
* dfareporting.creativeGroups.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creativeGroups.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string=} params.advertiserIds Select only creative groups that belong to these advertisers.
* @param {integer=} params.groupNumber Select only creative groups that belong to this subgroup.
* @param {string=} params.ids Select only creative groups with these IDs.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for creative groups by name or ID. Wildcards (*) are allowed. For example, "creativegroup*2015" will return creative groups with names like "creativegroup June 2015", "creativegroup April 2015", or simply "creativegroup 2015". Most of the searches also add wild-cards implicitly at the start and the end of the search string. For example, a search string of "creativegroup" will match creative groups with the name "my creativegroup", "creativegroup 2015", or simply "creativegroup".
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/creativeGroups',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.creativeGroups.patch
*
* @desc Updates an existing creative group. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Creative group ID.
* id: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body. Only added properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.creativeGroups.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creativeGroups.patch
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Creative group ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).CreativeGroup} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/creativeGroups',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.creativeGroups.update
*
* @desc Updates an existing creative group.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.creativeGroups.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creativeGroups.update
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).CreativeGroup} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/creativeGroups',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.creatives = {
/**
* dfareporting.creatives.get
*
* @desc Gets one creative by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Creative ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.creatives.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creatives.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Creative ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/creatives/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.creatives.insert
*
* @desc Inserts a new creative.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.creatives.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creatives.insert
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).Creative} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/creatives',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.creatives.list
*
* @desc Retrieves a list of creatives, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var creativesPage = response['creatives'];
* if (!creativesPage) {
* return;
* }
* for (var i = 0; i < creativesPage.length; i++) {
* // TODO: Change code below to process each resource in `creativesPage`:
* console.log(JSON.stringify(creativesPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.creatives.list(request, handlePage);
* }
* };
*
* dfareporting.creatives.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creatives.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {boolean=} params.active Select only active creatives. Leave blank to select active and inactive creatives.
* @param {string=} params.advertiserId Select only creatives with this advertiser ID.
* @param {boolean=} params.archived Select only archived creatives. Leave blank to select archived and unarchived creatives.
* @param {string=} params.campaignId Select only creatives with this campaign ID.
* @param {string=} params.companionCreativeIds Select only in-stream video creatives with these companion IDs.
* @param {string=} params.creativeFieldIds Select only creatives with these creative field IDs.
* @param {string=} params.ids Select only creatives with these IDs.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.renderingIds Select only creatives with these rendering IDs.
* @param {string=} params.searchString Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, "creative*2015" will return objects with names like "creative June 2015", "creative April 2015", or simply "creative 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "creative" will match objects with name "my creative", "creative 2015", or simply "creative".
* @param {string=} params.sizeIds Select only creatives with these size IDs.
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {string=} params.studioCreativeId Select only creatives corresponding to this Studio creative ID.
* @param {string=} params.types Select only creatives with these creative types.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/creatives',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.creatives.patch
*
* @desc Updates an existing creative. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Creative ID.
* id: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body. Only added properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.creatives.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creatives.patch
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Creative ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).Creative} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/creatives',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.creatives.update
*
* @desc Updates an existing creative.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.creatives.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creatives.update
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).Creative} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/creatives',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.dimensionValues = {
/**
* dfareporting.dimensionValues.query
*
* @desc Retrieves list of report dimension values for a list of filters.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // The DFA user profile ID.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var itemsPage = response['items'];
* if (!itemsPage) {
* return;
* }
* for (var i = 0; i < itemsPage.length; i++) {
* // TODO: Change code below to process each resource in `itemsPage`:
* console.log(JSON.stringify(itemsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.dimensionValues.query(request, handlePage);
* }
* };
*
* dfareporting.dimensionValues.query(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfareporting
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.dimensionValues.query
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken The value of the nextToken from the previous result page.
* @param {string} params.profileId The DFA user profile ID.
* @param {dfareporting(v2.6).DimensionValueRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
query: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/dimensionvalues/query',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.directorySiteContacts = {
/**
* dfareporting.directorySiteContacts.get
*
* @desc Gets one directory site contact by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Directory site contact ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.directorySiteContacts.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.directorySiteContacts.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Directory site contact ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/directorySiteContacts/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.directorySiteContacts.list
*
* @desc Retrieves a list of directory site contacts, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var directorySiteContactsPage = response['directorySiteContacts'];
* if (!directorySiteContactsPage) {
* return;
* }
* for (var i = 0; i < directorySiteContactsPage.length; i++) {
* // TODO: Change code below to process each resource in `directorySiteContactsPage`:
* console.log(JSON.stringify(directorySiteContactsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.directorySiteContacts.list(request, handlePage);
* }
* };
*
* dfareporting.directorySiteContacts.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.directorySiteContacts.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string=} params.directorySiteIds Select only directory site contacts with these directory site IDs. This is a required field.
* @param {string=} params.ids Select only directory site contacts with these IDs.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for objects by name, ID or email. Wildcards (*) are allowed. For example, "directory site contact*2015" will return objects with names like "directory site contact June 2015", "directory site contact April 2015", or simply "directory site contact 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "directory site contact" will match objects with name "my directory site contact", "directory site contact 2015", or simply "directory site contact".
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/directorySiteContacts',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.directorySites = {
/**
* dfareporting.directorySites.get
*
* @desc Gets one directory site by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Directory site ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.directorySites.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.directorySites.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Directory site ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/directorySites/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.directorySites.insert
*
* @desc Inserts a new directory site.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.directorySites.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.directorySites.insert
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).DirectorySite} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/directorySites',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.directorySites.list
*
* @desc Retrieves a list of directory sites, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var directorySitesPage = response['directorySites'];
* if (!directorySitesPage) {
* return;
* }
* for (var i = 0; i < directorySitesPage.length; i++) {
* // TODO: Change code below to process each resource in `directorySitesPage`:
* console.log(JSON.stringify(directorySitesPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.directorySites.list(request, handlePage);
* }
* };
*
* dfareporting.directorySites.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.directorySites.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {boolean=} params.acceptsInStreamVideoPlacements This search filter is no longer supported and will have no effect on the results returned.
* @param {boolean=} params.acceptsInterstitialPlacements This search filter is no longer supported and will have no effect on the results returned.
* @param {boolean=} params.acceptsPublisherPaidPlacements Select only directory sites that accept publisher paid placements. This field can be left blank.
* @param {boolean=} params.active Select only active directory sites. Leave blank to retrieve both active and inactive directory sites.
* @param {string=} params.countryId Select only directory sites with this country ID.
* @param {string=} params.dfp_network_code Select only directory sites with this DFP network code.
* @param {string=} params.ids Select only directory sites with these IDs.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string=} params.parentId Select only directory sites with this parent ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for objects by name, ID or URL. Wildcards (*) are allowed. For example, "directory site*2015" will return objects with names like "directory site June 2015", "directory site April 2015", or simply "directory site 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "directory site" will match objects with name "my directory site", "directory site 2015" or simply, "directory site".
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/directorySites',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.dynamicTargetingKeys = {
/**
* dfareporting.dynamicTargetingKeys.delete
*
* @desc Deletes an existing dynamic targeting key.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // ID of the object of this dynamic targeting key. This is a required field.
* objectId: '', // TODO: Update placeholder value.
*
* // Name of this dynamic targeting key. This is a required field. Must be less than 256 characters long
* // and cannot contain commas. All characters are converted to lowercase.
* name: '', // TODO: Update placeholder value.
*
* // Type of the object of this dynamic targeting key. This is a required field.
* objectType: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.dynamicTargetingKeys.delete(request, function(err) {
* if (err) {
* console.log(err);
* return;
* }
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.dynamicTargetingKeys.delete
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.name Name of this dynamic targeting key. This is a required field. Must be less than 256 characters long and cannot contain commas. All characters are converted to lowercase.
* @param {string} params.objectId ID of the object of this dynamic targeting key. This is a required field.
* @param {string} params.objectType Type of the object of this dynamic targeting key. This is a required field.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/dynamicTargetingKeys/{objectId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['profileId', 'objectId', 'name', 'objectType'],
pathParams: ['objectId', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.dynamicTargetingKeys.insert
*
* @desc Inserts a new dynamic targeting key. Keys must be created at the advertiser level before being assigned to the advertiser's ads, creatives, or placements. There is a maximum of 1000 keys per advertiser, out of which a maximum of 20 keys can be assigned per ad, creative, or placement.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.dynamicTargetingKeys.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.dynamicTargetingKeys.insert
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).DynamicTargetingKey} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/dynamicTargetingKeys',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.dynamicTargetingKeys.list
*
* @desc Retrieves a list of dynamic targeting keys.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.dynamicTargetingKeys.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.dynamicTargetingKeys.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string=} params.advertiserId Select only dynamic targeting keys whose object has this advertiser ID.
* @param {string=} params.names Select only dynamic targeting keys exactly matching these names.
* @param {string=} params.objectId Select only dynamic targeting keys with this object ID.
* @param {string=} params.objectType Select only dynamic targeting keys with this object type.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/dynamicTargetingKeys',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.eventTags = {
/**
* dfareporting.eventTags.delete
*
* @desc Deletes an existing event tag.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Event tag ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.eventTags.delete(request, function(err) {
* if (err) {
* console.log(err);
* return;
* }
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.eventTags.delete
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Event tag ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/eventTags/{id}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.eventTags.get
*
* @desc Gets one event tag by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Event tag ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.eventTags.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.eventTags.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Event tag ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/eventTags/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.eventTags.insert
*
* @desc Inserts a new event tag.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.eventTags.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.eventTags.insert
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).EventTag} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/eventTags',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.eventTags.list
*
* @desc Retrieves a list of event tags, possibly filtered.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.eventTags.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.eventTags.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string=} params.adId Select only event tags that belong to this ad.
* @param {string=} params.advertiserId Select only event tags that belong to this advertiser.
* @param {string=} params.campaignId Select only event tags that belong to this campaign.
* @param {boolean=} params.definitionsOnly Examine only the specified campaign or advertiser's event tags for matching selector criteria. When set to false, the parent advertiser and parent campaign of the specified ad or campaign is examined as well. In addition, when set to false, the status field is examined as well, along with the enabledByDefault field. This parameter can not be set to true when adId is specified as ads do not define their own even tags.
* @param {boolean=} params.enabled Select only enabled event tags. What is considered enabled or disabled depends on the definitionsOnly parameter. When definitionsOnly is set to true, only the specified advertiser or campaign's event tags' enabledByDefault field is examined. When definitionsOnly is set to false, the specified ad or specified campaign's parent advertiser's or parent campaign's event tags' enabledByDefault and status fields are examined as well.
* @param {string=} params.eventTagTypes Select only event tags with the specified event tag types. Event tag types can be used to specify whether to use a third-party pixel, a third-party JavaScript URL, or a third-party click-through URL for either impression or click tracking.
* @param {string=} params.ids Select only event tags with these IDs.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, "eventtag*2015" will return objects with names like "eventtag June 2015", "eventtag April 2015", or simply "eventtag 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "eventtag" will match objects with name "my eventtag", "eventtag 2015", or simply "eventtag".
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/eventTags',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.eventTags.patch
*
* @desc Updates an existing event tag. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Event tag ID.
* id: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body. Only added properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.eventTags.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.eventTags.patch
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Event tag ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).EventTag} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/eventTags',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.eventTags.update
*
* @desc Updates an existing event tag.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.eventTags.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.eventTags.update
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).EventTag} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/eventTags',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.files = {
/**
* dfareporting.files.get
*
* @desc Retrieves a report file by its report ID and file ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // The ID of the report.
* reportId: '', // TODO: Update placeholder value.
*
* // The ID of the report file.
* fileId: '', // TODO: Update placeholder value.
*
* // TODO: To download media content, use:
* //
* // alt: 'media',
*
* auth: authClient
* };
*
* dfareporting.files.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfareporting
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.files.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.fileId The ID of the report file.
* @param {string} params.reportId The ID of the report.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/reports/{reportId}/files/{fileId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['reportId', 'fileId'],
pathParams: ['fileId', 'reportId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.files.list
*
* @desc Lists files for a user profile.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // The DFA profile ID.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var itemsPage = response['items'];
* if (!itemsPage) {
* return;
* }
* for (var i = 0; i < itemsPage.length; i++) {
* // TODO: Change code below to process each resource in `itemsPage`:
* console.log(JSON.stringify(itemsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.files.list(request, handlePage);
* }
* };
*
* dfareporting.files.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfareporting
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.files.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken The value of the nextToken from the previous result page.
* @param {string} params.profileId The DFA profile ID.
* @param {string=} params.scope The scope that defines which results are returned, default is 'MINE'.
* @param {string=} params.sortField The field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is 'DESCENDING'.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/files',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.floodlightActivities = {
/**
* dfareporting.floodlightActivities.delete
*
* @desc Deletes an existing floodlight activity.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Floodlight activity ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.floodlightActivities.delete(request, function(err) {
* if (err) {
* console.log(err);
* return;
* }
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.floodlightActivities.delete
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Floodlight activity ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/floodlightActivities/{id}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.floodlightActivities.generatetag
*
* @desc Generates a tag for a floodlight activity.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.floodlightActivities.generatetag(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.floodlightActivities.generatetag
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string=} params.floodlightActivityId Floodlight activity ID for which we want to generate a tag.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
generatetag: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/floodlightActivities/generatetag',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.floodlightActivities.get
*
* @desc Gets one floodlight activity by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Floodlight activity ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.floodlightActivities.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.floodlightActivities.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Floodlight activity ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/floodlightActivities/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.floodlightActivities.insert
*
* @desc Inserts a new floodlight activity.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.floodlightActivities.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.floodlightActivities.insert
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).FloodlightActivity} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/floodlightActivities',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.floodlightActivities.list
*
* @desc Retrieves a list of floodlight activities, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var floodlightActivitiesPage = response['floodlightActivities'];
* if (!floodlightActivitiesPage) {
* return;
* }
* for (var i = 0; i < floodlightActivitiesPage.length; i++) {
* // TODO: Change code below to process each resource in `floodlightActivitiesPage`:
* console.log(JSON.stringify(floodlightActivitiesPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.floodlightActivities.list(request, handlePage);
* }
* };
*
* dfareporting.floodlightActivities.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.floodlightActivities.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string=} params.advertiserId Select only floodlight activities for the specified advertiser ID. Must specify either ids, advertiserId, or floodlightConfigurationId for a non-empty result.
* @param {string=} params.floodlightActivityGroupIds Select only floodlight activities with the specified floodlight activity group IDs.
* @param {string=} params.floodlightActivityGroupName Select only floodlight activities with the specified floodlight activity group name.
* @param {string=} params.floodlightActivityGroupTagString Select only floodlight activities with the specified floodlight activity group tag string.
* @param {string=} params.floodlightActivityGroupType Select only floodlight activities with the specified floodlight activity group type.
* @param {string=} params.floodlightConfigurationId Select only floodlight activities for the specified floodlight configuration ID. Must specify either ids, advertiserId, or floodlightConfigurationId for a non-empty result.
* @param {string=} params.ids Select only floodlight activities with the specified IDs. Must specify either ids, advertiserId, or floodlightConfigurationId for a non-empty result.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, "floodlightactivity*2015" will return objects with names like "floodlightactivity June 2015", "floodlightactivity April 2015", or simply "floodlightactivity 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "floodlightactivity" will match objects with name "my floodlightactivity activity", "floodlightactivity 2015", or simply "floodlightactivity".
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {string=} params.tagString Select only floodlight activities with the specified tag string.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/floodlightActivities',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.floodlightActivities.patch
*
* @desc Updates an existing floodlight activity. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Floodlight activity ID.
* id: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body. Only added properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.floodlightActivities.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.floodlightActivities.patch
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Floodlight activity ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).FloodlightActivity} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/floodlightActivities',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.floodlightActivities.update
*
* @desc Updates an existing floodlight activity.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.floodlightActivities.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.floodlightActivities.update
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).FloodlightActivity} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/floodlightActivities',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.floodlightActivityGroups = {
/**
* dfareporting.floodlightActivityGroups.get
*
* @desc Gets one floodlight activity group by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Floodlight activity Group ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.floodlightActivityGroups.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.floodlightActivityGroups.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Floodlight activity Group ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/floodlightActivityGroups/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.floodlightActivityGroups.insert
*
* @desc Inserts a new floodlight activity group.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.floodlightActivityGroups.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.floodlightActivityGroups.insert
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).FloodlightActivityGroup} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/floodlightActivityGroups',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.floodlightActivityGroups.list
*
* @desc Retrieves a list of floodlight activity groups, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var floodlightActivityGroupsPage = response['floodlightActivityGroups'];
* if (!floodlightActivityGroupsPage) {
* return;
* }
* for (var i = 0; i < floodlightActivityGroupsPage.length; i++) {
* // TODO: Change code below to process each resource in `floodlightActivityGroupsPage`:
* console.log(JSON.stringify(floodlightActivityGroupsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.floodlightActivityGroups.list(request, handlePage);
* }
* };
*
* dfareporting.floodlightActivityGroups.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.floodlightActivityGroups.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string=} params.advertiserId Select only floodlight activity groups with the specified advertiser ID. Must specify either advertiserId or floodlightConfigurationId for a non-empty result.
* @param {string=} params.floodlightConfigurationId Select only floodlight activity groups with the specified floodlight configuration ID. Must specify either advertiserId, or floodlightConfigurationId for a non-empty result.
* @param {string=} params.ids Select only floodlight activity groups with the specified IDs. Must specify either advertiserId or floodlightConfigurationId for a non-empty result.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, "floodlightactivitygroup*2015" will return objects with names like "floodlightactivitygroup June 2015", "floodlightactivitygroup April 2015", or simply "floodlightactivitygroup 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "floodlightactivitygroup" will match objects with name "my floodlightactivitygroup activity", "floodlightactivitygroup 2015", or simply "floodlightactivitygroup".
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {string=} params.type Select only floodlight activity groups with the specified floodlight activity group type.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/floodlightActivityGroups',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.floodlightActivityGroups.patch
*
* @desc Updates an existing floodlight activity group. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Floodlight activity Group ID.
* id: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body. Only added properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.floodlightActivityGroups.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.floodlightActivityGroups.patch
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Floodlight activity Group ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).FloodlightActivityGroup} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/floodlightActivityGroups',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.floodlightActivityGroups.update
*
* @desc Updates an existing floodlight activity group.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.floodlightActivityGroups.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.floodlightActivityGroups.update
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).FloodlightActivityGroup} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/floodlightActivityGroups',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.floodlightConfigurations = {
/**
* dfareporting.floodlightConfigurations.get
*
* @desc Gets one floodlight configuration by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Floodlight configuration ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.floodlightConfigurations.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.floodlightConfigurations.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Floodlight configuration ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/floodlightConfigurations/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.floodlightConfigurations.list
*
* @desc Retrieves a list of floodlight configurations, possibly filtered.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.floodlightConfigurations.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.floodlightConfigurations.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string=} params.ids Set of IDs of floodlight configurations to retrieve. Required field; otherwise an empty list will be returned.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/floodlightConfigurations',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.floodlightConfigurations.patch
*
* @desc Updates an existing floodlight configuration. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Floodlight configuration ID.
* id: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body. Only added properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.floodlightConfigurations.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.floodlightConfigurations.patch
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Floodlight configuration ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).FloodlightConfiguration} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/floodlightConfigurations',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.floodlightConfigurations.update
*
* @desc Updates an existing floodlight configuration.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.floodlightConfigurations.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.floodlightConfigurations.update
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).FloodlightConfiguration} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/floodlightConfigurations',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.inventoryItems = {
/**
* dfareporting.inventoryItems.get
*
* @desc Gets one inventory item by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Project ID for order documents.
* projectId: '', // TODO: Update placeholder value.
*
* // Inventory item ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.inventoryItems.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.inventoryItems.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Inventory item ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string} params.projectId Project ID for order documents.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/projects/{projectId}/inventoryItems/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'projectId', 'id'],
pathParams: ['id', 'profileId', 'projectId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.inventoryItems.list
*
* @desc Retrieves a list of inventory items, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Project ID for order documents.
* projectId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var inventoryItemsPage = response['inventoryItems'];
* if (!inventoryItemsPage) {
* return;
* }
* for (var i = 0; i < inventoryItemsPage.length; i++) {
* // TODO: Change code below to process each resource in `inventoryItemsPage`:
* console.log(JSON.stringify(inventoryItemsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.inventoryItems.list(request, handlePage);
* }
* };
*
* dfareporting.inventoryItems.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.inventoryItems.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string=} params.ids Select only inventory items with these IDs.
* @param {boolean=} params.inPlan Select only inventory items that are in plan.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.orderId Select only inventory items that belong to specified orders.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string} params.projectId Project ID for order documents.
* @param {string=} params.siteId Select only inventory items that are associated with these sites.
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {string=} params.type Select only inventory items with this type.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/projects/{projectId}/inventoryItems',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'projectId'],
pathParams: ['profileId', 'projectId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.landingPages = {
/**
* dfareporting.landingPages.delete
*
* @desc Deletes an existing campaign landing page.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Landing page campaign ID.
* campaignId: '', // TODO: Update placeholder value.
*
* // Landing page ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.landingPages.delete(request, function(err) {
* if (err) {
* console.log(err);
* return;
* }
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.landingPages.delete
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.campaignId Landing page campaign ID.
* @param {string} params.id Landing page ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/campaigns/{campaignId}/landingPages/{id}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['profileId', 'campaignId', 'id'],
pathParams: ['campaignId', 'id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.landingPages.get
*
* @desc Gets one campaign landing page by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Landing page campaign ID.
* campaignId: '', // TODO: Update placeholder value.
*
* // Landing page ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.landingPages.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.landingPages.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.campaignId Landing page campaign ID.
* @param {string} params.id Landing page ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/campaigns/{campaignId}/landingPages/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'campaignId', 'id'],
pathParams: ['campaignId', 'id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.landingPages.insert
*
* @desc Inserts a new landing page for the specified campaign.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Landing page campaign ID.
* campaignId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.landingPages.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.landingPages.insert
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.campaignId Landing page campaign ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).LandingPage} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/campaigns/{campaignId}/landingPages',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId', 'campaignId'],
pathParams: ['campaignId', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.landingPages.list
*
* @desc Retrieves the list of landing pages for the specified campaign.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Landing page campaign ID.
* campaignId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.landingPages.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.landingPages.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.campaignId Landing page campaign ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/campaigns/{campaignId}/landingPages',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'campaignId'],
pathParams: ['campaignId', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.landingPages.patch
*
* @desc Updates an existing campaign landing page. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Landing page campaign ID.
* campaignId: '', // TODO: Update placeholder value.
*
* // Landing page ID.
* id: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body. Only added properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.landingPages.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.landingPages.patch
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.campaignId Landing page campaign ID.
* @param {string} params.id Landing page ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).LandingPage} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/campaigns/{campaignId}/landingPages',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'campaignId', 'id'],
pathParams: ['campaignId', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.landingPages.update
*
* @desc Updates an existing campaign landing page.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Landing page campaign ID.
* campaignId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.landingPages.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.landingPages.update
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.campaignId Landing page campaign ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).LandingPage} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/campaigns/{campaignId}/landingPages',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId', 'campaignId'],
pathParams: ['campaignId', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.languages = {
/**
* dfareporting.languages.list
*
* @desc Retrieves a list of languages.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.languages.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.languages.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/languages',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.metros = {
/**
* dfareporting.metros.list
*
* @desc Retrieves a list of metros.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.metros.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.metros.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/metros',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.mobileCarriers = {
/**
* dfareporting.mobileCarriers.get
*
* @desc Gets one mobile carrier by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Mobile carrier ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.mobileCarriers.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.mobileCarriers.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Mobile carrier ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/mobileCarriers/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.mobileCarriers.list
*
* @desc Retrieves a list of mobile carriers.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.mobileCarriers.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.mobileCarriers.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/mobileCarriers',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.operatingSystemVersions = {
/**
* dfareporting.operatingSystemVersions.get
*
* @desc Gets one operating system version by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Operating system version ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.operatingSystemVersions.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.operatingSystemVersions.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Operating system version ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/operatingSystemVersions/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.operatingSystemVersions.list
*
* @desc Retrieves a list of operating system versions.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.operatingSystemVersions.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.operatingSystemVersions.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/operatingSystemVersions',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.operatingSystems = {
/**
* dfareporting.operatingSystems.get
*
* @desc Gets one operating system by DART ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Operating system DART ID.
* dartId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.operatingSystems.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.operatingSystems.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.dartId Operating system DART ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/operatingSystems/{dartId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'dartId'],
pathParams: ['dartId', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.operatingSystems.list
*
* @desc Retrieves a list of operating systems.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.operatingSystems.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.operatingSystems.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/operatingSystems',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.orderDocuments = {
/**
* dfareporting.orderDocuments.get
*
* @desc Gets one order document by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Project ID for order documents.
* projectId: '', // TODO: Update placeholder value.
*
* // Order document ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.orderDocuments.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.orderDocuments.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Order document ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string} params.projectId Project ID for order documents.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/projects/{projectId}/orderDocuments/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'projectId', 'id'],
pathParams: ['id', 'profileId', 'projectId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.orderDocuments.list
*
* @desc Retrieves a list of order documents, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Project ID for order documents.
* projectId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var orderDocumentsPage = response['orderDocuments'];
* if (!orderDocumentsPage) {
* return;
* }
* for (var i = 0; i < orderDocumentsPage.length; i++) {
* // TODO: Change code below to process each resource in `orderDocumentsPage`:
* console.log(JSON.stringify(orderDocumentsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.orderDocuments.list(request, handlePage);
* }
* };
*
* dfareporting.orderDocuments.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.orderDocuments.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {boolean=} params.approved Select only order documents that have been approved by at least one user.
* @param {string=} params.ids Select only order documents with these IDs.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.orderId Select only order documents for specified orders.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string} params.projectId Project ID for order documents.
* @param {string=} params.searchString Allows searching for order documents by name or ID. Wildcards (*) are allowed. For example, "orderdocument*2015" will return order documents with names like "orderdocument June 2015", "orderdocument April 2015", or simply "orderdocument 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "orderdocument" will match order documents with name "my orderdocument", "orderdocument 2015", or simply "orderdocument".
* @param {string=} params.siteId Select only order documents that are associated with these sites.
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/projects/{projectId}/orderDocuments',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'projectId'],
pathParams: ['profileId', 'projectId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.orders = {
/**
* dfareporting.orders.get
*
* @desc Gets one order by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Project ID for orders.
* projectId: '', // TODO: Update placeholder value.
*
* // Order ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.orders.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.orders.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Order ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string} params.projectId Project ID for orders.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/projects/{projectId}/orders/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'projectId', 'id'],
pathParams: ['id', 'profileId', 'projectId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.orders.list
*
* @desc Retrieves a list of orders, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Project ID for orders.
* projectId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var ordersPage = response['orders'];
* if (!ordersPage) {
* return;
* }
* for (var i = 0; i < ordersPage.length; i++) {
* // TODO: Change code below to process each resource in `ordersPage`:
* console.log(JSON.stringify(ordersPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.orders.list(request, handlePage);
* }
* };
*
* dfareporting.orders.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.orders.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string=} params.ids Select only orders with these IDs.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string} params.projectId Project ID for orders.
* @param {string=} params.searchString Allows searching for orders by name or ID. Wildcards (*) are allowed. For example, "order*2015" will return orders with names like "order June 2015", "order April 2015", or simply "order 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "order" will match orders with name "my order", "order 2015", or simply "order".
* @param {string=} params.siteId Select only orders that are associated with these site IDs.
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/projects/{projectId}/orders',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'projectId'],
pathParams: ['profileId', 'projectId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.placementGroups = {
/**
* dfareporting.placementGroups.get
*
* @desc Gets one placement group by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Placement group ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.placementGroups.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.placementGroups.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Placement group ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/placementGroups/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.placementGroups.insert
*
* @desc Inserts a new placement group.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.placementGroups.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.placementGroups.insert
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).PlacementGroup} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/placementGroups',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.placementGroups.list
*
* @desc Retrieves a list of placement groups, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var placementGroupsPage = response['placementGroups'];
* if (!placementGroupsPage) {
* return;
* }
* for (var i = 0; i < placementGroupsPage.length; i++) {
* // TODO: Change code below to process each resource in `placementGroupsPage`:
* console.log(JSON.stringify(placementGroupsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.placementGroups.list(request, handlePage);
* }
* };
*
* dfareporting.placementGroups.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.placementGroups.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string=} params.advertiserIds Select only placement groups that belong to these advertisers.
* @param {boolean=} params.archived Select only archived placements. Don't set this field to select both archived and non-archived placements.
* @param {string=} params.campaignIds Select only placement groups that belong to these campaigns.
* @param {string=} params.contentCategoryIds Select only placement groups that are associated with these content categories.
* @param {string=} params.directorySiteIds Select only placement groups that are associated with these directory sites.
* @param {string=} params.ids Select only placement groups with these IDs.
* @param {string=} params.maxEndDate Select only placements or placement groups whose end date is on or before the specified maxEndDate. The date should be formatted as "yyyy-MM-dd".
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.maxStartDate Select only placements or placement groups whose start date is on or before the specified maxStartDate. The date should be formatted as "yyyy-MM-dd".
* @param {string=} params.minEndDate Select only placements or placement groups whose end date is on or after the specified minEndDate. The date should be formatted as "yyyy-MM-dd".
* @param {string=} params.minStartDate Select only placements or placement groups whose start date is on or after the specified minStartDate. The date should be formatted as "yyyy-MM-dd".
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string=} params.placementGroupType Select only placement groups belonging with this group type. A package is a simple group of placements that acts as a single pricing point for a group of tags. A roadblock is a group of placements that not only acts as a single pricing point but also assumes that all the tags in it will be served at the same time. A roadblock requires one of its assigned placements to be marked as primary for reporting.
* @param {string=} params.placementStrategyIds Select only placement groups that are associated with these placement strategies.
* @param {string=} params.pricingTypes Select only placement groups with these pricing types.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for placement groups by name or ID. Wildcards (*) are allowed. For example, "placement*2015" will return placement groups with names like "placement group June 2015", "placement group May 2015", or simply "placements 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "placementgroup" will match placement groups with name "my placementgroup", "placementgroup 2015", or simply "placementgroup".
* @param {string=} params.siteIds Select only placement groups that are associated with these sites.
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/placementGroups',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.placementGroups.patch
*
* @desc Updates an existing placement group. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Placement group ID.
* id: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body. Only added properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.placementGroups.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.placementGroups.patch
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Placement group ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).PlacementGroup} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/placementGroups',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.placementGroups.update
*
* @desc Updates an existing placement group.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.placementGroups.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.placementGroups.update
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).PlacementGroup} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/placementGroups',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.placementStrategies = {
/**
* dfareporting.placementStrategies.delete
*
* @desc Deletes an existing placement strategy.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Placement strategy ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.placementStrategies.delete(request, function(err) {
* if (err) {
* console.log(err);
* return;
* }
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.placementStrategies.delete
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Placement strategy ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/placementStrategies/{id}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.placementStrategies.get
*
* @desc Gets one placement strategy by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Placement strategy ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.placementStrategies.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.placementStrategies.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Placement strategy ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/placementStrategies/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.placementStrategies.insert
*
* @desc Inserts a new placement strategy.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.placementStrategies.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.placementStrategies.insert
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).PlacementStrategy} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/placementStrategies',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.placementStrategies.list
*
* @desc Retrieves a list of placement strategies, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var placementStrategiesPage = response['placementStrategies'];
* if (!placementStrategiesPage) {
* return;
* }
* for (var i = 0; i < placementStrategiesPage.length; i++) {
* // TODO: Change code below to process each resource in `placementStrategiesPage`:
* console.log(JSON.stringify(placementStrategiesPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.placementStrategies.list(request, handlePage);
* }
* };
*
* dfareporting.placementStrategies.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.placementStrategies.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string=} params.ids Select only placement strategies with these IDs.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, "placementstrategy*2015" will return objects with names like "placementstrategy June 2015", "placementstrategy April 2015", or simply "placementstrategy 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "placementstrategy" will match objects with name "my placementstrategy", "placementstrategy 2015", or simply "placementstrategy".
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/placementStrategies',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.placementStrategies.patch
*
* @desc Updates an existing placement strategy. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Placement strategy ID.
* id: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body. Only added properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.placementStrategies.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.placementStrategies.patch
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Placement strategy ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).PlacementStrategy} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/placementStrategies',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.placementStrategies.update
*
* @desc Updates an existing placement strategy.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.placementStrategies.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.placementStrategies.update
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).PlacementStrategy} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/placementStrategies',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.placements = {
/**
* dfareporting.placements.generatetags
*
* @desc Generates tags for a placement.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.placements.generatetags(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.placements.generatetags
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string=} params.campaignId Generate placements belonging to this campaign. This is a required field.
* @param {string=} params.placementIds Generate tags for these placements.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.tagFormats Tag formats to generate for these placements.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
generatetags: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/placements/generatetags',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.placements.get
*
* @desc Gets one placement by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Placement ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.placements.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.placements.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Placement ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/placements/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.placements.insert
*
* @desc Inserts a new placement.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.placements.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.placements.insert
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).Placement} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/placements',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.placements.list
*
* @desc Retrieves a list of placements, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var placementsPage = response['placements'];
* if (!placementsPage) {
* return;
* }
* for (var i = 0; i < placementsPage.length; i++) {
* // TODO: Change code below to process each resource in `placementsPage`:
* console.log(JSON.stringify(placementsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.placements.list(request, handlePage);
* }
* };
*
* dfareporting.placements.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.placements.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string=} params.advertiserIds Select only placements that belong to these advertisers.
* @param {boolean=} params.archived Select only archived placements. Don't set this field to select both archived and non-archived placements.
* @param {string=} params.campaignIds Select only placements that belong to these campaigns.
* @param {string=} params.compatibilities Select only placements that are associated with these compatibilities. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop or on mobile devices for regular or interstitial ads respectively. APP and APP_INTERSTITIAL are for rendering in mobile apps. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard.
* @param {string=} params.contentCategoryIds Select only placements that are associated with these content categories.
* @param {string=} params.directorySiteIds Select only placements that are associated with these directory sites.
* @param {string=} params.groupIds Select only placements that belong to these placement groups.
* @param {string=} params.ids Select only placements with these IDs.
* @param {string=} params.maxEndDate Select only placements or placement groups whose end date is on or before the specified maxEndDate. The date should be formatted as "yyyy-MM-dd".
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.maxStartDate Select only placements or placement groups whose start date is on or before the specified maxStartDate. The date should be formatted as "yyyy-MM-dd".
* @param {string=} params.minEndDate Select only placements or placement groups whose end date is on or after the specified minEndDate. The date should be formatted as "yyyy-MM-dd".
* @param {string=} params.minStartDate Select only placements or placement groups whose start date is on or after the specified minStartDate. The date should be formatted as "yyyy-MM-dd".
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string=} params.paymentSource Select only placements with this payment source.
* @param {string=} params.placementStrategyIds Select only placements that are associated with these placement strategies.
* @param {string=} params.pricingTypes Select only placements with these pricing types.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for placements by name or ID. Wildcards (*) are allowed. For example, "placement*2015" will return placements with names like "placement June 2015", "placement May 2015", or simply "placements 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "placement" will match placements with name "my placement", "placement 2015", or simply "placement".
* @param {string=} params.siteIds Select only placements that are associated with these sites.
* @param {string=} params.sizeIds Select only placements that are associated with these sizes.
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/placements',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.placements.patch
*
* @desc Updates an existing placement. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Placement ID.
* id: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body. Only added properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.placements.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.placements.patch
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Placement ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).Placement} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/placements',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.placements.update
*
* @desc Updates an existing placement.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.placements.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.placements.update
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).Placement} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/placements',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.platformTypes = {
/**
* dfareporting.platformTypes.get
*
* @desc Gets one platform type by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Platform type ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.platformTypes.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.platformTypes.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Platform type ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/platformTypes/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.platformTypes.list
*
* @desc Retrieves a list of platform types.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.platformTypes.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.platformTypes.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/platformTypes',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.postalCodes = {
/**
* dfareporting.postalCodes.get
*
* @desc Gets one postal code by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Postal code ID.
* code: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.postalCodes.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.postalCodes.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.code Postal code ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/postalCodes/{code}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'code'],
pathParams: ['code', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.postalCodes.list
*
* @desc Retrieves a list of postal codes.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.postalCodes.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.postalCodes.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/postalCodes',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.projects = {
/**
* dfareporting.projects.get
*
* @desc Gets one project by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Project ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.projects.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.projects.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Project ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/projects/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.projects.list
*
* @desc Retrieves a list of projects, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var projectsPage = response['projects'];
* if (!projectsPage) {
* return;
* }
* for (var i = 0; i < projectsPage.length; i++) {
* // TODO: Change code below to process each resource in `projectsPage`:
* console.log(JSON.stringify(projectsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.projects.list(request, handlePage);
* }
* };
*
* dfareporting.projects.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.projects.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string=} params.advertiserIds Select only projects with these advertiser IDs.
* @param {string=} params.ids Select only projects with these IDs.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for projects by name or ID. Wildcards (*) are allowed. For example, "project*2015" will return projects with names like "project June 2015", "project April 2015", or simply "project 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "project" will match projects with name "my project", "project 2015", or simply "project".
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/projects',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.regions = {
/**
* dfareporting.regions.list
*
* @desc Retrieves a list of regions.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.regions.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.regions.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/regions',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.remarketingListShares = {
/**
* dfareporting.remarketingListShares.get
*
* @desc Gets one remarketing list share by remarketing list ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Remarketing list ID.
* remarketingListId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.remarketingListShares.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.remarketingListShares.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {string} params.remarketingListId Remarketing list ID.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/remarketingListShares/{remarketingListId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'remarketingListId'],
pathParams: ['profileId', 'remarketingListId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.remarketingListShares.patch
*
* @desc Updates an existing remarketing list share. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Remarketing list ID.
* remarketingListId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body. Only added properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.remarketingListShares.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.remarketingListShares.patch
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {string} params.remarketingListId Remarketing list ID.
* @param {dfareporting(v2.6).RemarketingListShare} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/remarketingListShares',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'remarketingListId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.remarketingListShares.update
*
* @desc Updates an existing remarketing list share.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.remarketingListShares.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.remarketingListShares.update
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).RemarketingListShare} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/remarketingListShares',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.remarketingLists = {
/**
* dfareporting.remarketingLists.get
*
* @desc Gets one remarketing list by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Remarketing list ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.remarketingLists.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.remarketingLists.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Remarketing list ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/remarketingLists/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.remarketingLists.insert
*
* @desc Inserts a new remarketing list.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.remarketingLists.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.remarketingLists.insert
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).RemarketingList} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/remarketingLists',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.remarketingLists.list
*
* @desc Retrieves a list of remarketing lists, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Select only remarketing lists owned by this advertiser.
* advertiserId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var remarketingListsPage = response['remarketingLists'];
* if (!remarketingListsPage) {
* return;
* }
* for (var i = 0; i < remarketingListsPage.length; i++) {
* // TODO: Change code below to process each resource in `remarketingListsPage`:
* console.log(JSON.stringify(remarketingListsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.remarketingLists.list(request, handlePage);
* }
* };
*
* dfareporting.remarketingLists.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.remarketingLists.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {boolean=} params.active Select only active or only inactive remarketing lists.
* @param {string} params.advertiserId Select only remarketing lists owned by this advertiser.
* @param {string=} params.floodlightActivityId Select only remarketing lists that have this floodlight activity ID.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.name Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, "remarketing list*2015" will return objects with names like "remarketing list June 2015", "remarketing list April 2015", or simply "remarketing list 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "remarketing list" will match objects with name "my remarketing list", "remarketing list 2015", or simply "remarketing list".
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/remarketingLists',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'advertiserId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.remarketingLists.patch
*
* @desc Updates an existing remarketing list. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Remarketing list ID.
* id: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body. Only added properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.remarketingLists.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.remarketingLists.patch
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Remarketing list ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).RemarketingList} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/remarketingLists',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.remarketingLists.update
*
* @desc Updates an existing remarketing list.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.remarketingLists.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.remarketingLists.update
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).RemarketingList} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/remarketingLists',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.reports = {
/**
* dfareporting.reports.delete
*
* @desc Deletes a report by its ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // The DFA user profile ID.
* profileId: '', // TODO: Update placeholder value.
*
* // The ID of the report.
* reportId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.reports.delete(request, function(err) {
* if (err) {
* console.log(err);
* return;
* }
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfareporting
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.reports.delete
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId The DFA user profile ID.
* @param {string} params.reportId The ID of the report.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/reports/{reportId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['profileId', 'reportId'],
pathParams: ['profileId', 'reportId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.reports.get
*
* @desc Retrieves a report by its ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // The DFA user profile ID.
* profileId: '', // TODO: Update placeholder value.
*
* // The ID of the report.
* reportId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.reports.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfareporting
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.reports.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId The DFA user profile ID.
* @param {string} params.reportId The ID of the report.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/reports/{reportId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'reportId'],
pathParams: ['profileId', 'reportId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.reports.insert
*
* @desc Creates a report.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // The DFA user profile ID.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.reports.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfareporting
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.reports.insert
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId The DFA user profile ID.
* @param {dfareporting(v2.6).Report} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/reports',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.reports.list
*
* @desc Retrieves list of reports.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // The DFA user profile ID.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var itemsPage = response['items'];
* if (!itemsPage) {
* return;
* }
* for (var i = 0; i < itemsPage.length; i++) {
* // TODO: Change code below to process each resource in `itemsPage`:
* console.log(JSON.stringify(itemsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.reports.list(request, handlePage);
* }
* };
*
* dfareporting.reports.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfareporting
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.reports.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken The value of the nextToken from the previous result page.
* @param {string} params.profileId The DFA user profile ID.
* @param {string=} params.scope The scope that defines which results are returned, default is 'MINE'.
* @param {string=} params.sortField The field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is 'DESCENDING'.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/reports',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.reports.patch
*
* @desc Updates a report. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // The DFA user profile ID.
* profileId: '', // TODO: Update placeholder value.
*
* // The ID of the report.
* reportId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body. Only added properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.reports.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfareporting
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.reports.patch
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId The DFA user profile ID.
* @param {string} params.reportId The ID of the report.
* @param {dfareporting(v2.6).Report} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/reports/{reportId}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'reportId'],
pathParams: ['profileId', 'reportId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.reports.run
*
* @desc Runs a report.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // The DFA profile ID.
* profileId: '', // TODO: Update placeholder value.
*
* // The ID of the report.
* reportId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.reports.run(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfareporting
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.reports.run
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId The DFA profile ID.
* @param {string} params.reportId The ID of the report.
* @param {boolean=} params.synchronous If set and true, tries to run the report synchronously.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
run: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/reports/{reportId}/run',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId', 'reportId'],
pathParams: ['profileId', 'reportId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.reports.update
*
* @desc Updates a report.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // The DFA user profile ID.
* profileId: '', // TODO: Update placeholder value.
*
* // The ID of the report.
* reportId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.reports.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfareporting
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.reports.update
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId The DFA user profile ID.
* @param {string} params.reportId The ID of the report.
* @param {dfareporting(v2.6).Report} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/reports/{reportId}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId', 'reportId'],
pathParams: ['profileId', 'reportId'],
context: self
};
return createAPIRequest(parameters, callback);
},
compatibleFields: {
/**
* dfareporting.reports.compatibleFields.query
*
* @desc Returns the fields that are compatible to be selected in the respective sections of a report criteria, given the fields already selected in the input report and user permissions.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // The DFA user profile ID.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.reports.compatibleFields.query(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfareporting
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.reports.compatibleFields.query
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId The DFA user profile ID.
* @param {dfareporting(v2.6).Report} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
query: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/reports/compatiblefields/query',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
files: {
/**
* dfareporting.reports.files.get
*
* @desc Retrieves a report file.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // The DFA profile ID.
* profileId: '', // TODO: Update placeholder value.
*
* // The ID of the report.
* reportId: '', // TODO: Update placeholder value.
*
* // The ID of the report file.
* fileId: '', // TODO: Update placeholder value.
*
* // TODO: To download media content, use:
* //
* // alt: 'media',
*
* auth: authClient
* };
*
* dfareporting.reports.files.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfareporting
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.reports.files.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.fileId The ID of the report file.
* @param {string} params.profileId The DFA profile ID.
* @param {string} params.reportId The ID of the report.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/reports/{reportId}/files/{fileId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'reportId', 'fileId'],
pathParams: ['fileId', 'profileId', 'reportId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.reports.files.list
*
* @desc Lists files for a report.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // The DFA profile ID.
* profileId: '', // TODO: Update placeholder value.
*
* // The ID of the parent report.
* reportId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var itemsPage = response['items'];
* if (!itemsPage) {
* return;
* }
* for (var i = 0; i < itemsPage.length; i++) {
* // TODO: Change code below to process each resource in `itemsPage`:
* console.log(JSON.stringify(itemsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.reports.files.list(request, handlePage);
* }
* };
*
* dfareporting.reports.files.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfareporting
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.reports.files.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken The value of the nextToken from the previous result page.
* @param {string} params.profileId The DFA profile ID.
* @param {string} params.reportId The ID of the parent report.
* @param {string=} params.sortField The field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is 'DESCENDING'.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/reports/{reportId}/files',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'reportId'],
pathParams: ['profileId', 'reportId'],
context: self
};
return createAPIRequest(parameters, callback);
}
}
};
self.sites = {
/**
* dfareporting.sites.get
*
* @desc Gets one site by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Site ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.sites.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.sites.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Site ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/sites/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.sites.insert
*
* @desc Inserts a new site.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.sites.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.sites.insert
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).Site} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/sites',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.sites.list
*
* @desc Retrieves a list of sites, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var sitesPage = response['sites'];
* if (!sitesPage) {
* return;
* }
* for (var i = 0; i < sitesPage.length; i++) {
* // TODO: Change code below to process each resource in `sitesPage`:
* console.log(JSON.stringify(sitesPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.sites.list(request, handlePage);
* }
* };
*
* dfareporting.sites.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.sites.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {boolean=} params.acceptsInStreamVideoPlacements This search filter is no longer supported and will have no effect on the results returned.
* @param {boolean=} params.acceptsInterstitialPlacements This search filter is no longer supported and will have no effect on the results returned.
* @param {boolean=} params.acceptsPublisherPaidPlacements Select only sites that accept publisher paid placements.
* @param {boolean=} params.adWordsSite Select only AdWords sites.
* @param {boolean=} params.approved Select only approved sites.
* @param {string=} params.campaignIds Select only sites with these campaign IDs.
* @param {string=} params.directorySiteIds Select only sites with these directory site IDs.
* @param {string=} params.ids Select only sites with these IDs.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for objects by name, ID or keyName. Wildcards (*) are allowed. For example, "site*2015" will return objects with names like "site June 2015", "site April 2015", or simply "site 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "site" will match objects with name "my site", "site 2015", or simply "site".
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {string=} params.subaccountId Select only sites with this subaccount ID.
* @param {boolean=} params.unmappedSite Select only sites that have not been mapped to a directory site.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/sites',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.sites.patch
*
* @desc Updates an existing site. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Site ID.
* id: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body. Only added properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.sites.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.sites.patch
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Site ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).Site} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/sites',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.sites.update
*
* @desc Updates an existing site.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.sites.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.sites.update
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).Site} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/sites',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.sizes = {
/**
* dfareporting.sizes.get
*
* @desc Gets one size by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Size ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.sizes.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.sizes.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Size ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/sizes/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.sizes.insert
*
* @desc Inserts a new size.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.sizes.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.sizes.insert
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).Size} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/sizes',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.sizes.list
*
* @desc Retrieves a list of sizes, possibly filtered.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.sizes.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.sizes.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {integer=} params.height Select only sizes with this height.
* @param {boolean=} params.iabStandard Select only IAB standard sizes.
* @param {string=} params.ids Select only sizes with these IDs.
* @param {string} params.profileId User profile ID associated with this request.
* @param {integer=} params.width Select only sizes with this width.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/sizes',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.subaccounts = {
/**
* dfareporting.subaccounts.get
*
* @desc Gets one subaccount by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Subaccount ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.subaccounts.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.subaccounts.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Subaccount ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/subaccounts/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.subaccounts.insert
*
* @desc Inserts a new subaccount.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.subaccounts.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.subaccounts.insert
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).Subaccount} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/subaccounts',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.subaccounts.list
*
* @desc Gets a list of subaccounts, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var subaccountsPage = response['subaccounts'];
* if (!subaccountsPage) {
* return;
* }
* for (var i = 0; i < subaccountsPage.length; i++) {
* // TODO: Change code below to process each resource in `subaccountsPage`:
* console.log(JSON.stringify(subaccountsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.subaccounts.list(request, handlePage);
* }
* };
*
* dfareporting.subaccounts.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.subaccounts.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string=} params.ids Select only subaccounts with these IDs.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, "subaccount*2015" will return objects with names like "subaccount June 2015", "subaccount April 2015", or simply "subaccount 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "subaccount" will match objects with name "my subaccount", "subaccount 2015", or simply "subaccount".
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/subaccounts',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.subaccounts.patch
*
* @desc Updates an existing subaccount. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Subaccount ID.
* id: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body. Only added properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.subaccounts.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.subaccounts.patch
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Subaccount ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).Subaccount} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/subaccounts',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.subaccounts.update
*
* @desc Updates an existing subaccount.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.subaccounts.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.subaccounts.update
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).Subaccount} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/subaccounts',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.targetableRemarketingLists = {
/**
* dfareporting.targetableRemarketingLists.get
*
* @desc Gets one remarketing list by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Remarketing list ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.targetableRemarketingLists.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.targetableRemarketingLists.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Remarketing list ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/targetableRemarketingLists/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.targetableRemarketingLists.list
*
* @desc Retrieves a list of targetable remarketing lists, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Select only targetable remarketing lists targetable by these advertisers.
* advertiserId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var targetableRemarketingListsPage = response['targetableRemarketingLists'];
* if (!targetableRemarketingListsPage) {
* return;
* }
* for (var i = 0; i < targetableRemarketingListsPage.length; i++) {
* // TODO: Change code below to process each resource in `targetableRemarketingListsPage`:
* console.log(JSON.stringify(targetableRemarketingListsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.targetableRemarketingLists.list(request, handlePage);
* }
* };
*
* dfareporting.targetableRemarketingLists.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.targetableRemarketingLists.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {boolean=} params.active Select only active or only inactive targetable remarketing lists.
* @param {string} params.advertiserId Select only targetable remarketing lists targetable by these advertisers.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.name Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, "remarketing list*2015" will return objects with names like "remarketing list June 2015", "remarketing list April 2015", or simply "remarketing list 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "remarketing list" will match objects with name "my remarketing list", "remarketing list 2015", or simply "remarketing list".
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/targetableRemarketingLists',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'advertiserId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.targetingTemplates = {
/**
* dfareporting.targetingTemplates.get
*
* @desc Gets one targeting template by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Targeting template ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.targetingTemplates.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.targetingTemplates.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Targeting template ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/targetingTemplates/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.targetingTemplates.insert
*
* @desc Inserts a new targeting template.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.targetingTemplates.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.targetingTemplates.insert
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).TargetingTemplate} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/targetingTemplates',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.targetingTemplates.list
*
* @desc Retrieves a list of targeting templates, optionally filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var targetingTemplatesPage = response['targetingTemplates'];
* if (!targetingTemplatesPage) {
* return;
* }
* for (var i = 0; i < targetingTemplatesPage.length; i++) {
* // TODO: Change code below to process each resource in `targetingTemplatesPage`:
* console.log(JSON.stringify(targetingTemplatesPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.targetingTemplates.list(request, handlePage);
* }
* };
*
* dfareporting.targetingTemplates.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.targetingTemplates.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string=} params.advertiserId Select only targeting templates with this advertiser ID.
* @param {string=} params.ids Select only targeting templates with these IDs.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, "template*2015" will return objects with names like "template June 2015", "template April 2015", or simply "template 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "template" will match objects with name "my template", "template 2015", or simply "template".
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/targetingTemplates',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.targetingTemplates.patch
*
* @desc Updates an existing targeting template. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // Targeting template ID.
* id: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body. Only added properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.targetingTemplates.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.targetingTemplates.patch
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id Targeting template ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).TargetingTemplate} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/targetingTemplates',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.targetingTemplates.update
*
* @desc Updates an existing targeting template.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.targetingTemplates.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.targetingTemplates.update
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).TargetingTemplate} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/targetingTemplates',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.userProfiles = {
/**
* dfareporting.userProfiles.get
*
* @desc Gets one user profile by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // The user profile ID.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.userProfiles.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using one of the following scopes:
* // https://www.googleapis.com/auth/dfareporting
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.userProfiles.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId The user profile ID.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.userProfiles.list
*
* @desc Retrieves list of user profiles for a user.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* auth: authClient
* };
*
* dfareporting.userProfiles.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using one of the following scopes:
* // https://www.googleapis.com/auth/dfareporting
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.userProfiles.list
* @memberOf! dfareporting(v2.6)
*
* @param {object=} params Parameters for request
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles',
method: 'GET'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.userRolePermissionGroups = {
/**
* dfareporting.userRolePermissionGroups.get
*
* @desc Gets one user role permission group by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // User role permission group ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.userRolePermissionGroups.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.userRolePermissionGroups.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id User role permission group ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/userRolePermissionGroups/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.userRolePermissionGroups.list
*
* @desc Gets a list of all supported user role permission groups.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.userRolePermissionGroups.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.userRolePermissionGroups.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/userRolePermissionGroups',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.userRolePermissions = {
/**
* dfareporting.userRolePermissions.get
*
* @desc Gets one user role permission by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // User role permission ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.userRolePermissions.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.userRolePermissions.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id User role permission ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/userRolePermissions/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.userRolePermissions.list
*
* @desc Gets a list of user role permissions, possibly filtered.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.userRolePermissions.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.userRolePermissions.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string=} params.ids Select only user role permissions with these IDs.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/userRolePermissions',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.userRoles = {
/**
* dfareporting.userRoles.delete
*
* @desc Deletes an existing user role.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // User role ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.userRoles.delete(request, function(err) {
* if (err) {
* console.log(err);
* return;
* }
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.userRoles.delete
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id User role ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/userRoles/{id}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.userRoles.get
*
* @desc Gets one user role by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // User role ID.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.userRoles.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.userRoles.get
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id User role ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/userRoles/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.userRoles.insert
*
* @desc Inserts a new user role.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.userRoles.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.userRoles.insert
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).UserRole} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/userRoles',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.userRoles.list
*
* @desc Retrieves a list of user roles, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var userRolesPage = response['userRoles'];
* if (!userRolesPage) {
* return;
* }
* for (var i = 0; i < userRolesPage.length; i++) {
* // TODO: Change code below to process each resource in `userRolesPage`:
* console.log(JSON.stringify(userRolesPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.userRoles.list(request, handlePage);
* }
* };
*
* dfareporting.userRoles.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.userRoles.list
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {boolean=} params.accountUserRoleOnly Select only account level user roles not associated with any specific subaccount.
* @param {string=} params.ids Select only user roles with the specified IDs.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, "userrole*2015" will return objects with names like "userrole June 2015", "userrole April 2015", or simply "userrole 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "userrole" will match objects with name "my userrole", "userrole 2015", or simply "userrole".
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {string=} params.subaccountId Select only user roles that belong to this subaccount.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/userRoles',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.userRoles.patch
*
* @desc Updates an existing user role. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* // User role ID.
* id: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body. Only added properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.userRoles.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.userRoles.patch
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.id User role ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).UserRole} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/userRoles',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.userRoles.update
*
* @desc Updates an existing user role.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.6');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties of the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.userRoles.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See:
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples,
* //
* // Authorize using the following scope:
* // https://www.googleapis.com/auth/dfatrafficking
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.userRoles.update
* @memberOf! dfareporting(v2.6)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.6).UserRole} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.6/userprofiles/{profileId}/userRoles',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
}
/**
* @typedef Account
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string[]} accountPermissionIds Account permissions assigned to this account.
* @property {string} accountProfile Profile for this account. This is a read-only field that can be left blank.
* @property {boolean} active Whether this account is active.
* @property {string} activeAdsLimitTier Maximum number of active ads allowed for this account.
* @property {boolean} activeViewOptOut Whether to serve creatives with Active View tags. If disabled, viewability data will not be available for any impressions.
* @property {string[]} availablePermissionIds User role permissions available to the user roles of this account.
* @property {string} countryId ID of the country associated with this account.
* @property {string} currencyId ID of currency associated with this account. This is a required field.
Acceptable values are:
- "1" for USD
- "2" for GBP
- "3" for ESP
- "4" for SEK
- "5" for CAD
- "6" for JPY
- "7" for DEM
- "8" for AUD
- "9" for FRF
- "10" for ITL
- "11" for DKK
- "12" for NOK
- "13" for FIM
- "14" for ZAR
- "15" for IEP
- "16" for NLG
- "17" for EUR
- "18" for KRW
- "19" for TWD
- "20" for SGD
- "21" for CNY
- "22" for HKD
- "23" for NZD
- "24" for MYR
- "25" for BRL
- "26" for PTE
- "27" for MXP
- "28" for CLP
- "29" for TRY
- "30" for ARS
- "31" for PEN
- "32" for ILS
- "33" for CHF
- "34" for VEF
- "35" for COP
- "36" for GTQ
- "37" for PLN
- "39" for INR
- "40" for THB
- "41" for IDR
- "42" for CZK
- "43" for RON
- "44" for HUF
- "45" for RUB
- "46" for AED
- "47" for BGN
- "48" for HRK
* @property {string} defaultCreativeSizeId Default placement dimensions for this account.
* @property {string} description Description of this account.
* @property {string} id ID of this account. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#account".
* @property {string} locale Locale of this account.
Acceptable values are:
- "cs" (Czech)
- "de" (German)
- "en" (English)
- "en-GB" (English United Kingdom)
- "es" (Spanish)
- "fr" (French)
- "it" (Italian)
- "ja" (Japanese)
- "ko" (Korean)
- "pl" (Polish)
- "pt-BR" (Portuguese Brazil)
- "ru" (Russian)
- "sv" (Swedish)
- "tr" (Turkish)
- "zh-CN" (Chinese Simplified)
- "zh-TW" (Chinese Traditional)
* @property {string} maximumImageSize Maximum image size allowed for this account.
* @property {string} name Name of this account. This is a required field, and must be less than 128 characters long and be globally unique.
* @property {boolean} nielsenOcrEnabled Whether campaigns created in this account will be enabled for Nielsen OCR reach ratings by default.
* @property {dfareporting(v2.6).ReportsConfiguration} reportsConfiguration Reporting configuration of this account.
* @property {boolean} shareReportsWithTwitter Share Path to Conversion reports with Twitter.
* @property {string} teaserSizeLimit File size limit in kilobytes of Rich Media teaser creatives. Must be between 1 and 10240.
*/
/**
* @typedef AccountActiveAdSummary
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} accountId ID of the account.
* @property {string} activeAds Ads that have been activated for the account
* @property {string} activeAdsLimitTier Maximum number of active ads allowed for the account.
* @property {string} availableAds Ads that can be activated for the account.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#accountActiveAdSummary".
*/
/**
* @typedef AccountPermission
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string[]} accountProfiles Account profiles associated with this account permission.
Possible values are:
- "ACCOUNT_PROFILE_BASIC"
- "ACCOUNT_PROFILE_STANDARD"
* @property {string} id ID of this account permission.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#accountPermission".
* @property {string} level Administrative level required to enable this account permission.
* @property {string} name Name of this account permission.
* @property {string} permissionGroupId Permission group of this account permission.
*/
/**
* @typedef AccountPermissionGroup
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} id ID of this account permission group.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#accountPermissionGroup".
* @property {string} name Name of this account permission group.
*/
/**
* @typedef AccountPermissionGroupsListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).AccountPermissionGroup[]} accountPermissionGroups Account permission group collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#accountPermissionGroupsListResponse".
*/
/**
* @typedef AccountPermissionsListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).AccountPermission[]} accountPermissions Account permission collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#accountPermissionsListResponse".
*/
/**
* @typedef AccountUserProfile
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} accountId Account ID of the user profile. This is a read-only field that can be left blank.
* @property {boolean} active Whether this user profile is active. This defaults to false, and must be set true on insert for the user profile to be usable.
* @property {dfareporting(v2.6).ObjectFilter} advertiserFilter Filter that describes which advertisers are visible to the user profile.
* @property {dfareporting(v2.6).ObjectFilter} campaignFilter Filter that describes which campaigns are visible to the user profile.
* @property {string} comments Comments for this user profile.
* @property {string} email Email of the user profile. The email addresss must be linked to a Google Account. This field is required on insertion and is read-only after insertion.
* @property {string} id ID of the user profile. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#accountUserProfile".
* @property {string} locale Locale of the user profile. This is a required field.
Acceptable values are:
- "cs" (Czech)
- "de" (German)
- "en" (English)
- "en-GB" (English United Kingdom)
- "es" (Spanish)
- "fr" (French)
- "it" (Italian)
- "ja" (Japanese)
- "ko" (Korean)
- "pl" (Polish)
- "pt-BR" (Portuguese Brazil)
- "ru" (Russian)
- "sv" (Swedish)
- "tr" (Turkish)
- "zh-CN" (Chinese Simplified)
- "zh-TW" (Chinese Traditional)
* @property {string} name Name of the user profile. This is a required field. Must be less than 64 characters long, must be globally unique, and cannot contain whitespace or any of the following characters: "&;"#%,".
* @property {dfareporting(v2.6).ObjectFilter} siteFilter Filter that describes which sites are visible to the user profile.
* @property {string} subaccountId Subaccount ID of the user profile. This is a read-only field that can be left blank.
* @property {string} traffickerType Trafficker type of this user profile.
* @property {string} userAccessType User type of the user profile. This is a read-only field that can be left blank.
* @property {dfareporting(v2.6).ObjectFilter} userRoleFilter Filter that describes which user roles are visible to the user profile.
* @property {string} userRoleId User role ID of the user profile. This is a required field.
*/
/**
* @typedef AccountUserProfilesListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).AccountUserProfile[]} accountUserProfiles Account user profile collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#accountUserProfilesListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
*/
/**
* @typedef AccountsListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).Account[]} accounts Account collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#accountsListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
*/
/**
* @typedef Activities
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).DimensionValue[]} filters List of activity filters. The dimension values need to be all either of type "dfa:activity" or "dfa:activityGroup".
* @property {string} kind The kind of resource this is, in this case dfareporting#activities.
* @property {string[]} metricNames List of names of floodlight activity metrics.
*/
/**
* @typedef Ad
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} accountId Account ID of this ad. This is a read-only field that can be left blank.
* @property {boolean} active Whether this ad is active. When true, archived must be false.
* @property {string} advertiserId Advertiser ID of this ad. This is a required field on insertion.
* @property {dfareporting(v2.6).DimensionValue} advertiserIdDimensionValue Dimension value for the ID of the advertiser. This is a read-only, auto-generated field.
* @property {boolean} archived Whether this ad is archived. When true, active must be false.
* @property {string} audienceSegmentId Audience segment ID that is being targeted for this ad. Applicable when type is AD_SERVING_STANDARD_AD.
* @property {string} campaignId Campaign ID of this ad. This is a required field on insertion.
* @property {dfareporting(v2.6).DimensionValue} campaignIdDimensionValue Dimension value for the ID of the campaign. This is a read-only, auto-generated field.
* @property {dfareporting(v2.6).ClickThroughUrl} clickThroughUrl Click-through URL for this ad. This is a required field on insertion. Applicable when type is AD_SERVING_CLICK_TRACKER.
* @property {dfareporting(v2.6).ClickThroughUrlSuffixProperties} clickThroughUrlSuffixProperties Click-through URL suffix properties for this ad. Applies to the URL in the ad or (if overriding ad properties) the URL in the creative.
* @property {string} comments Comments for this ad.
* @property {string} compatibility Compatibility of this ad. Applicable when type is AD_SERVING_DEFAULT_AD. DISPLAY and DISPLAY_INTERSTITIAL refer to either rendering on desktop or on mobile devices or in mobile apps for regular or interstitial ads, respectively. APP and APP_INTERSTITIAL are only used for existing default ads. New mobile placements must be assigned DISPLAY or DISPLAY_INTERSTITIAL and default ads created for those placements will be limited to those compatibility types. IN_STREAM_VIDEO refers to rendering in-stream video ads developed with the VAST standard.
* @property {dfareporting(v2.6).LastModifiedInfo} createInfo Information about the creation of this ad. This is a read-only field.
* @property {dfareporting(v2.6).CreativeGroupAssignment[]} creativeGroupAssignments Creative group assignments for this ad. Applicable when type is AD_SERVING_CLICK_TRACKER. Only one assignment per creative group number is allowed for a maximum of two assignments.
* @property {dfareporting(v2.6).CreativeRotation} creativeRotation Creative rotation for this ad. Applicable when type is AD_SERVING_DEFAULT_AD, AD_SERVING_STANDARD_AD, or AD_SERVING_TRACKING. When type is AD_SERVING_DEFAULT_AD, this field should have exactly one creativeAssignment.
* @property {dfareporting(v2.6).DayPartTargeting} dayPartTargeting Time and day targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD.
* @property {dfareporting(v2.6).DefaultClickThroughEventTagProperties} defaultClickThroughEventTagProperties Default click-through event tag properties for this ad.
* @property {dfareporting(v2.6).DeliverySchedule} deliverySchedule Delivery schedule information for this ad. Applicable when type is AD_SERVING_STANDARD_AD or AD_SERVING_TRACKING. This field along with subfields priority and impressionRatio are required on insertion when type is AD_SERVING_STANDARD_AD.
* @property {boolean} dynamicClickTracker Whether this ad is a dynamic click tracker. Applicable when type is AD_SERVING_CLICK_TRACKER. This is a required field on insert, and is read-only after insert.
* @property {string} endTime Date and time that this ad should stop serving. Must be later than the start time. This is a required field on insertion.
* @property {dfareporting(v2.6).EventTagOverride[]} eventTagOverrides Event tag overrides for this ad.
* @property {dfareporting(v2.6).GeoTargeting} geoTargeting Geographical targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD.
* @property {string} id ID of this ad. This is a read-only, auto-generated field.
* @property {dfareporting(v2.6).DimensionValue} idDimensionValue Dimension value for the ID of this ad. This is a read-only, auto-generated field.
* @property {dfareporting(v2.6).KeyValueTargetingExpression} keyValueTargetingExpression Key-value targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#ad".
* @property {dfareporting(v2.6).LanguageTargeting} languageTargeting Language targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD.
* @property {dfareporting(v2.6).LastModifiedInfo} lastModifiedInfo Information about the most recent modification of this ad. This is a read-only field.
* @property {string} name Name of this ad. This is a required field and must be less than 256 characters long.
* @property {dfareporting(v2.6).PlacementAssignment[]} placementAssignments Placement assignments for this ad.
* @property {dfareporting(v2.6).ListTargetingExpression} remarketingListExpression Remarketing list targeting expression for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD.
* @property {dfareporting(v2.6).Size} size Size of this ad. Applicable when type is AD_SERVING_DEFAULT_AD.
* @property {boolean} sslCompliant Whether this ad is ssl compliant. This is a read-only field that is auto-generated when the ad is inserted or updated.
* @property {boolean} sslRequired Whether this ad requires ssl. This is a read-only field that is auto-generated when the ad is inserted or updated.
* @property {string} startTime Date and time that this ad should start serving. If creating an ad, this field must be a time in the future. This is a required field on insertion.
* @property {string} subaccountId Subaccount ID of this ad. This is a read-only field that can be left blank.
* @property {string} targetingTemplateId Targeting template ID, used to apply preconfigured targeting information to this ad. This cannot be set while any of dayPartTargeting, geoTargeting, keyValueTargetingExpression, languageTargeting, remarketingListExpression, or technologyTargeting are set. Applicable when type is AD_SERVING_STANDARD_AD.
* @property {dfareporting(v2.6).TechnologyTargeting} technologyTargeting Technology platform targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD.
* @property {string} type Type of ad. This is a required field on insertion. Note that default ads (AD_SERVING_DEFAULT_AD) cannot be created directly (see Creative resource).
*/
/**
* @typedef AdSlot
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} comment Comment for this ad slot.
* @property {string} compatibility Ad slot compatibility. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop, mobile devices or in mobile apps for regular or interstitial ads respectively. APP and APP_INTERSTITIAL are for rendering in mobile apps. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard.
* @property {string} height Height of this ad slot.
* @property {string} linkedPlacementId ID of the placement from an external platform that is linked to this ad slot.
* @property {string} name Name of this ad slot.
* @property {string} paymentSourceType Payment source type of this ad slot.
* @property {boolean} primary Primary ad slot of a roadblock inventory item.
* @property {string} width Width of this ad slot.
*/
/**
* @typedef AdsListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).Ad[]} ads Ad collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#adsListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
*/
/**
* @typedef Advertiser
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} accountId Account ID of this advertiser.This is a read-only field that can be left blank.
* @property {string} advertiserGroupId ID of the advertiser group this advertiser belongs to. You can group advertisers for reporting purposes, allowing you to see aggregated information for all advertisers in each group.
* @property {string} clickThroughUrlSuffix Suffix added to click-through URL of ad creative associations under this advertiser. Must be less than 129 characters long.
* @property {string} defaultClickThroughEventTagId ID of the click-through event tag to apply by default to the landing pages of this advertiser's campaigns.
* @property {string} defaultEmail Default email address used in sender field for tag emails.
* @property {string} floodlightConfigurationId Floodlight configuration ID of this advertiser. The floodlight configuration ID will be created automatically, so on insert this field should be left blank. This field can be set to another advertiser's floodlight configuration ID in order to share that advertiser's floodlight configuration with this advertiser, so long as:
- This advertiser's original floodlight configuration is not already associated with floodlight activities or floodlight activity groups.
- This advertiser's original floodlight configuration is not already shared with another advertiser.
* @property {dfareporting(v2.6).DimensionValue} floodlightConfigurationIdDimensionValue Dimension value for the ID of the floodlight configuration. This is a read-only, auto-generated field.
* @property {string} id ID of this advertiser. This is a read-only, auto-generated field.
* @property {dfareporting(v2.6).DimensionValue} idDimensionValue Dimension value for the ID of this advertiser. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#advertiser".
* @property {string} name Name of this advertiser. This is a required field and must be less than 256 characters long and unique among advertisers of the same account.
* @property {string} originalFloodlightConfigurationId Original floodlight configuration before any sharing occurred. Set the floodlightConfigurationId of this advertiser to originalFloodlightConfigurationId to unshare the advertiser's current floodlight configuration. You cannot unshare an advertiser's floodlight configuration if the shared configuration has activities associated with any campaign or placement.
* @property {string} status Status of this advertiser.
* @property {string} subaccountId Subaccount ID of this advertiser.This is a read-only field that can be left blank.
* @property {boolean} suspended Suspension status of this advertiser.
*/
/**
* @typedef AdvertiserGroup
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} accountId Account ID of this advertiser group. This is a read-only field that can be left blank.
* @property {string} id ID of this advertiser group. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#advertiserGroup".
* @property {string} name Name of this advertiser group. This is a required field and must be less than 256 characters long and unique among advertiser groups of the same account.
*/
/**
* @typedef AdvertiserGroupsListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).AdvertiserGroup[]} advertiserGroups Advertiser group collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#advertiserGroupsListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
*/
/**
* @typedef AdvertisersListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).Advertiser[]} advertisers Advertiser collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#advertisersListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
*/
/**
* @typedef AudienceSegment
* @memberOf! dfareporting(v2.6)
* @type object
* @property {integer} allocation Weight allocated to this segment. Must be between 1 and 1000. The weight assigned will be understood in proportion to the weights assigned to other segments in the same segment group.
* @property {string} id ID of this audience segment. This is a read-only, auto-generated field.
* @property {string} name Name of this audience segment. This is a required field and must be less than 65 characters long.
*/
/**
* @typedef AudienceSegmentGroup
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).AudienceSegment[]} audienceSegments Audience segments assigned to this group. The number of segments must be between 2 and 100.
* @property {string} id ID of this audience segment group. This is a read-only, auto-generated field.
* @property {string} name Name of this audience segment group. This is a required field and must be less than 65 characters long.
*/
/**
* @typedef Browser
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} browserVersionId ID referring to this grouping of browser and version numbers. This is the ID used for targeting.
* @property {string} dartId DART ID of this browser. This is the ID used when generating reports.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#browser".
* @property {string} majorVersion Major version number (leftmost number) of this browser. For example, for Chrome 5.0.376.86 beta, this field should be set to 5. An asterisk (*) may be used to target any version number, and a question mark (?) may be used to target cases where the version number cannot be identified. For example, Chrome *.* targets any version of Chrome: 1.2, 2.5, 3.5, and so on. Chrome 3.* targets Chrome 3.1, 3.5, but not 4.0. Firefox ?.? targets cases where the ad server knows the browser is Firefox but can't tell which version it is.
* @property {string} minorVersion Minor version number (number after first dot on left) of this browser. For example, for Chrome 5.0.375.86 beta, this field should be set to 0. An asterisk (*) may be used to target any version number, and a question mark (?) may be used to target cases where the version number cannot be identified. For example, Chrome *.* targets any version of Chrome: 1.2, 2.5, 3.5, and so on. Chrome 3.* targets Chrome 3.1, 3.5, but not 4.0. Firefox ?.? targets cases where the ad server knows the browser is Firefox but can't tell which version it is.
* @property {string} name Name of this browser.
*/
/**
* @typedef BrowsersListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).Browser[]} browsers Browser collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#browsersListResponse".
*/
/**
* @typedef Campaign
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} accountId Account ID of this campaign. This is a read-only field that can be left blank.
* @property {dfareporting(v2.6).CreativeOptimizationConfiguration[]} additionalCreativeOptimizationConfigurations Additional creative optimization configurations for the campaign.
* @property {string} advertiserGroupId Advertiser group ID of the associated advertiser.
* @property {string} advertiserId Advertiser ID of this campaign. This is a required field.
* @property {dfareporting(v2.6).DimensionValue} advertiserIdDimensionValue Dimension value for the advertiser ID of this campaign. This is a read-only, auto-generated field.
* @property {boolean} archived Whether this campaign has been archived.
* @property {dfareporting(v2.6).AudienceSegmentGroup[]} audienceSegmentGroups Audience segment groups assigned to this campaign. Cannot have more than 300 segment groups.
* @property {string} billingInvoiceCode Billing invoice code included in the DCM client billing invoices associated with the campaign.
* @property {dfareporting(v2.6).ClickThroughUrlSuffixProperties} clickThroughUrlSuffixProperties Click-through URL suffix override properties for this campaign.
* @property {string} comment Arbitrary comments about this campaign. Must be less than 256 characters long.
* @property {dfareporting(v2.6).LastModifiedInfo} createInfo Information about the creation of this campaign. This is a read-only field.
* @property {string[]} creativeGroupIds List of creative group IDs that are assigned to the campaign.
* @property {dfareporting(v2.6).CreativeOptimizationConfiguration} creativeOptimizationConfiguration Creative optimization configuration for the campaign.
* @property {dfareporting(v2.6).DefaultClickThroughEventTagProperties} defaultClickThroughEventTagProperties Click-through event tag ID override properties for this campaign.
* @property {string} endDate Date on which the campaign will stop running. On insert, the end date must be today or a future date. The end date must be later than or be the same as the start date. If, for example, you set 6/25/2015 as both the start and end dates, the effective campaign run date is just that day only, 6/25/2015. The hours, minutes, and seconds of the end date should not be set, as doing so will result in an error. This is a required field.
* @property {dfareporting(v2.6).EventTagOverride[]} eventTagOverrides Overrides that can be used to activate or deactivate advertiser event tags.
* @property {string} externalId External ID for this campaign.
* @property {string} id ID of this campaign. This is a read-only auto-generated field.
* @property {dfareporting(v2.6).DimensionValue} idDimensionValue Dimension value for the ID of this campaign. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#campaign".
* @property {dfareporting(v2.6).LastModifiedInfo} lastModifiedInfo Information about the most recent modification of this campaign. This is a read-only field.
* @property {dfareporting(v2.6).LookbackConfiguration} lookbackConfiguration Lookback window settings for the campaign.
* @property {string} name Name of this campaign. This is a required field and must be less than 256 characters long and unique among campaigns of the same advertiser.
* @property {boolean} nielsenOcrEnabled Whether Nielsen reports are enabled for this campaign.
* @property {string} startDate Date on which the campaign starts running. The start date can be any date. The hours, minutes, and seconds of the start date should not be set, as doing so will result in an error. This is a required field.
* @property {string} subaccountId Subaccount ID of this campaign. This is a read-only field that can be left blank.
* @property {string[]} traffickerEmails Campaign trafficker contact emails.
*/
/**
* @typedef CampaignCreativeAssociation
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} creativeId ID of the creative associated with the campaign. This is a required field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#campaignCreativeAssociation".
*/
/**
* @typedef CampaignCreativeAssociationsListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).CampaignCreativeAssociation[]} campaignCreativeAssociations Campaign creative association collection
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#campaignCreativeAssociationsListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
*/
/**
* @typedef CampaignsListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).Campaign[]} campaigns Campaign collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#campaignsListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
*/
/**
* @typedef ChangeLog
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} accountId Account ID of the modified object.
* @property {string} action Action which caused the change.
* @property {string} changeTime Time when the object was modified.
* @property {string} fieldName Field name of the object which changed.
* @property {string} id ID of this change log.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#changeLog".
* @property {string} newValue New value of the object field.
* @property {string} objectId ID of the object of this change log. The object could be a campaign, placement, ad, or other type.
* @property {string} objectType Object type of the change log.
* @property {string} oldValue Old value of the object field.
* @property {string} subaccountId Subaccount ID of the modified object.
* @property {string} transactionId Transaction ID of this change log. When a single API call results in many changes, each change will have a separate ID in the change log but will share the same transactionId.
* @property {string} userProfileId ID of the user who modified the object.
* @property {string} userProfileName User profile name of the user who modified the object.
*/
/**
* @typedef ChangeLogsListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).ChangeLog[]} changeLogs Change log collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#changeLogsListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
*/
/**
* @typedef CitiesListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).City[]} cities City collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#citiesListResponse".
*/
/**
* @typedef City
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} countryCode Country code of the country to which this city belongs.
* @property {string} countryDartId DART ID of the country to which this city belongs.
* @property {string} dartId DART ID of this city. This is the ID used for targeting and generating reports.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#city".
* @property {string} metroCode Metro region code of the metro region (DMA) to which this city belongs.
* @property {string} metroDmaId ID of the metro region (DMA) to which this city belongs.
* @property {string} name Name of this city.
* @property {string} regionCode Region code of the region to which this city belongs.
* @property {string} regionDartId DART ID of the region to which this city belongs.
*/
/**
* @typedef ClickTag
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} eventName Advertiser event name associated with the click tag. This field is used by DISPLAY_IMAGE_GALLERY and HTML5_BANNER creatives. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.
* @property {string} name Parameter name for the specified click tag. For DISPLAY_IMAGE_GALLERY creative assets, this field must match the value of the creative asset's creativeAssetId.name field.
* @property {string} value Parameter value for the specified click tag. This field contains a click-through url.
*/
/**
* @typedef ClickThroughUrl
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} computedClickThroughUrl Read-only convenience field representing the actual URL that will be used for this click-through. The URL is computed as follows:
- If defaultLandingPage is enabled then the campaign's default landing page URL is assigned to this field.
- If defaultLandingPage is not enabled and a landingPageId is specified then that landing page's URL is assigned to this field.
- If neither of the above cases apply, then the customClickThroughUrl is assigned to this field.
* @property {string} customClickThroughUrl Custom click-through URL. Applicable if the defaultLandingPage field is set to false and the landingPageId field is left unset.
* @property {boolean} defaultLandingPage Whether the campaign default landing page is used.
* @property {string} landingPageId ID of the landing page for the click-through URL. Applicable if the defaultLandingPage field is set to false.
*/
/**
* @typedef ClickThroughUrlSuffixProperties
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} clickThroughUrlSuffix Click-through URL suffix to apply to all ads in this entity's scope. Must be less than 128 characters long.
* @property {boolean} overrideInheritedSuffix Whether this entity should override the inherited click-through URL suffix with its own defined value.
*/
/**
* @typedef CompanionClickThroughOverride
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).ClickThroughUrl} clickThroughUrl Click-through URL of this companion click-through override.
* @property {string} creativeId ID of the creative for this companion click-through override.
*/
/**
* @typedef CompatibleFields
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).CrossDimensionReachReportCompatibleFields} crossDimensionReachReportCompatibleFields Contains items that are compatible to be selected for a report of type "CROSS_DIMENSION_REACH".
* @property {dfareporting(v2.6).FloodlightReportCompatibleFields} floodlightReportCompatibleFields Contains items that are compatible to be selected for a report of type "FLOODLIGHT".
* @property {string} kind The kind of resource this is, in this case dfareporting#compatibleFields.
* @property {dfareporting(v2.6).PathToConversionReportCompatibleFields} pathToConversionReportCompatibleFields Contains items that are compatible to be selected for a report of type "PATH_TO_CONVERSION".
* @property {dfareporting(v2.6).ReachReportCompatibleFields} reachReportCompatibleFields Contains items that are compatible to be selected for a report of type "REACH".
* @property {dfareporting(v2.6).ReportCompatibleFields} reportCompatibleFields Contains items that are compatible to be selected for a report of type "STANDARD".
*/
/**
* @typedef ConnectionType
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} id ID of this connection type.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#connectionType".
* @property {string} name Name of this connection type.
*/
/**
* @typedef ConnectionTypesListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).ConnectionType[]} connectionTypes Collection of connection types such as broadband and mobile.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#connectionTypesListResponse".
*/
/**
* @typedef ContentCategoriesListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).ContentCategory[]} contentCategories Content category collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#contentCategoriesListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
*/
/**
* @typedef ContentCategory
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} accountId Account ID of this content category. This is a read-only field that can be left blank.
* @property {string} id ID of this content category. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#contentCategory".
* @property {string} name Name of this content category. This is a required field and must be less than 256 characters long and unique among content categories of the same account.
*/
/**
* @typedef Conversion
* @memberOf! dfareporting(v2.6)
* @type object
* @property {boolean} childDirectedTreatment Whether the conversion was directed toward children.
* @property {dfareporting(v2.6).CustomFloodlightVariable[]} customVariables Custom floodlight variables.
* @property {string} encryptedUserId The alphanumeric encrypted user ID. When set, encryptionInfo should also be specified. This field is mutually exclusive with encryptedUserIdCandidates[] and mobileDeviceId. This or encryptedUserIdCandidates[] or mobileDeviceId is a required field.
* @property {string[]} encryptedUserIdCandidates A list of the alphanumeric encrypted user IDs. Any user ID with exposure prior to the conversion timestamp will be used in the inserted conversion. If no such user ID is found then the conversion will be rejected with NO_COOKIE_MATCH_FOUND error. When set, encryptionInfo should also be specified. This field should only be used when calling conversions.batchinsert. This field is mutually exclusive with encryptedUserId and mobileDeviceId. This or encryptedUserId or mobileDeviceId is a required field.
* @property {string} floodlightActivityId Floodlight Activity ID of this conversion. This is a required field.
* @property {string} floodlightConfigurationId Floodlight Configuration ID of this conversion. This is a required field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#conversion".
* @property {boolean} limitAdTracking Whether Limit Ad Tracking is enabled. When set to true, the conversion will be used for reporting but not targeting. This will prevent remarketing.
* @property {string} mobileDeviceId The mobile device ID. This field is mutually exclusive with encryptedUserId and encryptedUserIdCandidates[]. This or encryptedUserId or encryptedUserIdCandidates[] is a required field.
* @property {string} ordinal The ordinal of the conversion. Use this field to control how conversions of the same user and day are de-duplicated. This is a required field.
* @property {string} quantity The quantity of the conversion.
* @property {string} timestampMicros The timestamp of conversion, in Unix epoch micros. This is a required field.
* @property {number} value The value of the conversion.
*/
/**
* @typedef ConversionError
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} code The error code.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#conversionError".
* @property {string} message A description of the error.
*/
/**
* @typedef ConversionStatus
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).Conversion} conversion The original conversion that was inserted or updated.
* @property {dfareporting(v2.6).ConversionError[]} errors A list of errors related to this conversion.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#conversionStatus".
*/
/**
* @typedef ConversionsBatchInsertRequest
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).Conversion[]} conversions The set of conversions to insert.
* @property {dfareporting(v2.6).EncryptionInfo} encryptionInfo Describes how encryptedUserId or encryptedUserIdCandidates[] is encrypted. This is a required field if encryptedUserId or encryptedUserIdCandidates[] is used.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#conversionsBatchInsertRequest".
*/
/**
* @typedef ConversionsBatchInsertResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {boolean} hasFailures Indicates that some or all conversions failed to insert.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#conversionsBatchInsertResponse".
* @property {dfareporting(v2.6).ConversionStatus[]} status The status of each conversion's insertion status. The status is returned in the same order that conversions are inserted.
*/
/**
* @typedef CountriesListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).Country[]} countries Country collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#countriesListResponse".
*/
/**
* @typedef Country
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} countryCode Country code.
* @property {string} dartId DART ID of this country. This is the ID used for targeting and generating reports.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#country".
* @property {string} name Name of this country.
* @property {boolean} sslEnabled Whether ad serving supports secure servers in this country.
*/
/**
* @typedef Creative
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} accountId Account ID of this creative. This field, if left unset, will be auto-generated for both insert and update operations. Applicable to all creative types.
* @property {boolean} active Whether the creative is active. Applicable to all creative types.
* @property {string} adParameters Ad parameters user for VPAID creative. This is a read-only field. Applicable to the following creative types: all VPAID.
* @property {string[]} adTagKeys Keywords for a Rich Media creative. Keywords let you customize the creative settings of a Rich Media ad running on your site without having to contact the advertiser. You can use keywords to dynamically change the look or functionality of a creative. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.
* @property {string} advertiserId Advertiser ID of this creative. This is a required field. Applicable to all creative types.
* @property {boolean} allowScriptAccess Whether script access is allowed for this creative. This is a read-only and deprecated field which will automatically be set to true on update. Applicable to the following creative types: FLASH_INPAGE.
* @property {boolean} archived Whether the creative is archived. Applicable to all creative types.
* @property {string} artworkType Type of artwork used for the creative. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.
* @property {string} authoringSource Source application where creative was authored. Presently, only DBM authored creatives will have this field set. Applicable to all creative types.
* @property {string} authoringTool Authoring tool for HTML5 banner creatives. This is a read-only field. Applicable to the following creative types: HTML5_BANNER.
* @property {boolean} auto_advance_images Whether images are automatically advanced for image gallery creatives. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY.
* @property {string} backgroundColor The 6-character HTML color code, beginning with #, for the background of the window area where the Flash file is displayed. Default is white. Applicable to the following creative types: FLASH_INPAGE.
* @property {string} backupImageClickThroughUrl Click-through URL for backup image. Applicable to the following creative types: FLASH_INPAGE and HTML5_BANNER. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.
* @property {string[]} backupImageFeatures List of feature dependencies that will cause a backup image to be served if the browser that serves the ad does not support them. Feature dependencies are features that a browser must be able to support in order to render your HTML5 creative asset correctly. This field is initially auto-generated to contain all features detected by DCM for all the assets of this creative and can then be modified by the client. To reset this field, copy over all the creativeAssets' detected features. Applicable to the following creative types: HTML5_BANNER. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.
* @property {string} backupImageReportingLabel Reporting label used for HTML5 banner backup image. Applicable to the following creative types: DISPLAY when the primary asset type is not HTML_IMAGE.
* @property {dfareporting(v2.6).TargetWindow} backupImageTargetWindow Target window for backup image. Applicable to the following creative types: FLASH_INPAGE and HTML5_BANNER. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.
* @property {dfareporting(v2.6).ClickTag[]} clickTags Click tags of the creative. For DISPLAY, FLASH_INPAGE, and HTML5_BANNER creatives, this is a subset of detected click tags for the assets associated with this creative. After creating a flash asset, detected click tags will be returned in the creativeAssetMetadata. When inserting the creative, populate the creative clickTags field using the creativeAssetMetadata.clickTags field. For DISPLAY_IMAGE_GALLERY creatives, there should be exactly one entry in this list for each image creative asset. A click tag is matched with a corresponding creative asset by matching the clickTag.name field with the creativeAsset.assetIdentifier.name field. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY, FLASH_INPAGE, HTML5_BANNER. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.
* @property {string} commercialId Industry standard ID assigned to creative for reach and frequency. Applicable to the following creative types: all INSTREAM_VIDEO and all VPAID.
* @property {string[]} companionCreatives List of companion creatives assigned to an in-Stream videocreative. Acceptable values include IDs of existing flash and image creatives. Applicable to the following creative types: all VPAID and all INSTREAM_VIDEO with dynamicAssetSelection set to false.
* @property {string[]} compatibility Compatibilities associated with this creative. This is a read-only field. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop or on mobile devices or in mobile apps for regular or interstitial ads, respectively. APP and APP_INTERSTITIAL are for rendering in mobile apps. Only pre-existing creatives may have these compatibilities since new creatives will either be assigned DISPLAY or DISPLAY_INTERSTITIAL instead. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard. Applicable to all creative types.
Acceptable values are:
- "APP"
- "APP_INTERSTITIAL"
- "IN_STREAM_VIDEO"
- "DISPLAY"
- "DISPLAY_INTERSTITIAL"
* @property {boolean} convertFlashToHtml5 Whether Flash assets associated with the creative need to be automatically converted to HTML5. This flag is enabled by default and users can choose to disable it if they don't want the system to generate and use HTML5 asset for this creative. Applicable to the following creative type: FLASH_INPAGE. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.
* @property {dfareporting(v2.6).CreativeCustomEvent[]} counterCustomEvents List of counter events configured for the creative. For DISPLAY_IMAGE_GALLERY creatives, these are read-only and auto-generated from clickTags. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY, all RICH_MEDIA, and all VPAID.
* @property {dfareporting(v2.6).CreativeAssetSelection} creativeAssetSelection Required if dynamicAssetSelection is true.
* @property {dfareporting(v2.6).CreativeAsset[]} creativeAssets Assets associated with a creative. Applicable to all but the following creative types: INTERNAL_REDIRECT, INTERSTITIAL_INTERNAL_REDIRECT, and REDIRECT
* @property {dfareporting(v2.6).CreativeFieldAssignment[]} creativeFieldAssignments Creative field assignments for this creative. Applicable to all creative types.
* @property {string[]} customKeyValues Custom key-values for a Rich Media creative. Key-values let you customize the creative settings of a Rich Media ad running on your site without having to contact the advertiser. You can use key-values to dynamically change the look or functionality of a creative. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.
* @property {boolean} dynamicAssetSelection Set this to true to enable the use of rules to target individual assets in this creative. When set to true creativeAssetSelection must be set. This also controls asset-level companions. When this is true, companion creatives should be assigned to creative assets. Learn more. Applicable to INSTREAM_VIDEO creatives.
* @property {dfareporting(v2.6).CreativeCustomEvent[]} exitCustomEvents List of exit events configured for the creative. For DISPLAY and DISPLAY_IMAGE_GALLERY creatives, these are read-only and auto-generated from clickTags, For DISPLAY, an event is also created from the backupImageReportingLabel. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY, all RICH_MEDIA, and all VPAID. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.
* @property {dfareporting(v2.6).FsCommand} fsCommand OpenWindow FSCommand of this creative. This lets the SWF file communicate with either Flash Player or the program hosting Flash Player, such as a web browser. This is only triggered if allowScriptAccess field is true. Applicable to the following creative types: FLASH_INPAGE.
* @property {string} htmlCode HTML code for the creative. This is a required field when applicable. This field is ignored if htmlCodeLocked is false. Applicable to the following creative types: all CUSTOM, FLASH_INPAGE, and HTML5_BANNER, and all RICH_MEDIA.
* @property {boolean} htmlCodeLocked Whether HTML code is DCM-generated or manually entered. Set to true to ignore changes to htmlCode. Applicable to the following creative types: FLASH_INPAGE and HTML5_BANNER.
* @property {string} id ID of this creative. This is a read-only, auto-generated field. Applicable to all creative types.
* @property {dfareporting(v2.6).DimensionValue} idDimensionValue Dimension value for the ID of this creative. This is a read-only field. Applicable to all creative types.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#creative".
* @property {dfareporting(v2.6).LastModifiedInfo} lastModifiedInfo Creative last modification information. This is a read-only field. Applicable to all creative types.
* @property {string} latestTraffickedCreativeId Latest Studio trafficked creative ID associated with rich media and VPAID creatives. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.
* @property {string} name Name of the creative. This is a required field and must be less than 256 characters long. Applicable to all creative types.
* @property {string} overrideCss Override CSS value for rich media creatives. Applicable to the following creative types: all RICH_MEDIA.
* @property {string} redirectUrl URL of hosted image or hosted video or another ad tag. For INSTREAM_VIDEO_REDIRECT creatives this is the in-stream video redirect URL. The standard for a VAST (Video Ad Serving Template) ad response allows for a redirect link to another VAST 2.0 or 3.0 call. This is a required field when applicable. Applicable to the following creative types: DISPLAY_REDIRECT, INTERNAL_REDIRECT, INTERSTITIAL_INTERNAL_REDIRECT, and INSTREAM_VIDEO_REDIRECT
* @property {string} renderingId ID of current rendering version. This is a read-only field. Applicable to all creative types.
* @property {dfareporting(v2.6).DimensionValue} renderingIdDimensionValue Dimension value for the rendering ID of this creative. This is a read-only field. Applicable to all creative types.
* @property {string} requiredFlashPluginVersion The minimum required Flash plugin version for this creative. For example, 11.2.202.235. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.
* @property {integer} requiredFlashVersion The internal Flash version for this creative as calculated by DoubleClick Studio. This is a read-only field. Applicable to the following creative types: FLASH_INPAGE all RICH_MEDIA, and all VPAID. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.
* @property {dfareporting(v2.6).Size} size Size associated with this creative. When inserting or updating a creative either the size ID field or size width and height fields can be used. This is a required field when applicable; however for IMAGE, FLASH_INPAGE creatives, and for DISPLAY creatives with a primary asset of type HTML_IMAGE, if left blank, this field will be automatically set using the actual size of the associated image assets. Applicable to the following creative types: DISPLAY, DISPLAY_IMAGE_GALLERY, FLASH_INPAGE, HTML5_BANNER, IMAGE, and all RICH_MEDIA.
* @property {boolean} skippable Whether the user can choose to skip the creative. Applicable to the following creative types: all INSTREAM_VIDEO and all VPAID.
* @property {boolean} sslCompliant Whether the creative is SSL-compliant. This is a read-only field. Applicable to all creative types.
* @property {boolean} sslOverride Whether creative should be treated as SSL compliant even if the system scan shows it's not. Applicable to all creative types.
* @property {string} studioAdvertiserId Studio advertiser ID associated with rich media and VPAID creatives. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.
* @property {string} studioCreativeId Studio creative ID associated with rich media and VPAID creatives. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.
* @property {string} studioTraffickedCreativeId Studio trafficked creative ID associated with rich media and VPAID creatives. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.
* @property {string} subaccountId Subaccount ID of this creative. This field, if left unset, will be auto-generated for both insert and update operations. Applicable to all creative types.
* @property {string} thirdPartyBackupImageImpressionsUrl Third-party URL used to record backup image impressions. Applicable to the following creative types: all RICH_MEDIA.
* @property {string} thirdPartyRichMediaImpressionsUrl Third-party URL used to record rich media impressions. Applicable to the following creative types: all RICH_MEDIA.
* @property {dfareporting(v2.6).ThirdPartyTrackingUrl[]} thirdPartyUrls Third-party URLs for tracking in-stream video creative events. Applicable to the following creative types: all INSTREAM_VIDEO and all VPAID.
* @property {dfareporting(v2.6).CreativeCustomEvent[]} timerCustomEvents List of timer events configured for the creative. For DISPLAY_IMAGE_GALLERY creatives, these are read-only and auto-generated from clickTags. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY, all RICH_MEDIA, and all VPAID. Applicable to DISPLAY when the primary asset is not HTML_IMAGE.
* @property {string} totalFileSize Combined size of all creative assets. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.
* @property {string} type Type of this creative. This is a required field. Applicable to all creative types.
Note: FLASH_INPAGE, HTML5_BANNER, and IMAGE are only used for existing creatives. New creatives should use DISPLAY as a replacement for these types.
* @property {integer} version The version number helps you keep track of multiple versions of your creative in your reports. The version number will always be auto-generated during insert operations to start at 1. For tracking creatives the version cannot be incremented and will always remain at 1. For all other creative types the version can be incremented only by 1 during update operations. In addition, the version will be automatically incremented by 1 when undergoing Rich Media creative merging. Applicable to all creative types.
* @property {string} videoDescription Description of the video ad. Applicable to the following creative types: all INSTREAM_VIDEO and all VPAID.
* @property {number} videoDuration Creative video duration in seconds. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO, all RICH_MEDIA, and all VPAID.
*/
/**
* @typedef CreativeAsset
* @memberOf! dfareporting(v2.6)
* @type object
* @property {boolean} actionScript3 Whether ActionScript3 is enabled for the flash asset. This is a read-only field. Applicable to the following creative type: FLASH_INPAGE. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.
* @property {boolean} active Whether the video asset is active. This is a read-only field for VPAID_NON_LINEAR_VIDEO assets. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID.
* @property {string} alignment Possible alignments for an asset. This is a read-only field. Applicable to the following creative types: RICH_MEDIA_DISPLAY_MULTI_FLOATING_INTERSTITIAL.
* @property {string} artworkType Artwork type of rich media creative. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.
* @property {dfareporting(v2.6).CreativeAssetId} assetIdentifier Identifier of this asset. This is the same identifier returned during creative asset insert operation. This is a required field. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT.
* @property {dfareporting(v2.6).CreativeCustomEvent} backupImageExit Exit event configured for the backup image. Applicable to the following creative types: all RICH_MEDIA.
* @property {integer} bitRate Detected bit-rate for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID.
* @property {string} childAssetType Rich media child asset type. This is a read-only field. Applicable to the following creative types: all VPAID.
* @property {dfareporting(v2.6).Size} collapsedSize Size of an asset when collapsed. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA and all VPAID. Additionally, applicable to assets whose displayType is ASSET_DISPLAY_TYPE_EXPANDING or ASSET_DISPLAY_TYPE_PEEL_DOWN.
* @property {string[]} companionCreativeIds List of companion creatives assigned to an in-stream video creative asset. Acceptable values include IDs of existing flash and image creatives. Applicable to INSTREAM_VIDEO creative type with dynamicAssetSelection set to true.
* @property {integer} customStartTimeValue Custom start time in seconds for making the asset visible. Applicable to the following creative types: all RICH_MEDIA.
* @property {string[]} detectedFeatures List of feature dependencies for the creative asset that are detected by DCM. Feature dependencies are features that a browser must be able to support in order to render your HTML5 creative correctly. This is a read-only, auto-generated field. Applicable to the following creative types: HTML5_BANNER. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.
* @property {string} displayType Type of rich media asset. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.
* @property {integer} duration Duration in seconds for which an asset will be displayed. Applicable to the following creative types: INSTREAM_VIDEO and VPAID_LINEAR_VIDEO.
* @property {string} durationType Duration type for which an asset will be displayed. Applicable to the following creative types: all RICH_MEDIA.
* @property {dfareporting(v2.6).Size} expandedDimension Detected expanded dimension for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID.
* @property {string} fileSize File size associated with this creative asset. This is a read-only field. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT.
* @property {integer} flashVersion Flash version of the asset. This is a read-only field. Applicable to the following creative types: FLASH_INPAGE, all RICH_MEDIA, and all VPAID. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.
* @property {boolean} hideFlashObjects Whether to hide Flash objects flag for an asset. Applicable to the following creative types: all RICH_MEDIA.
* @property {boolean} hideSelectionBoxes Whether to hide selection boxes flag for an asset. Applicable to the following creative types: all RICH_MEDIA.
* @property {boolean} horizontallyLocked Whether the asset is horizontally locked. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.
* @property {string} id Numeric ID of this creative asset. This is a required field and should not be modified. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT.
* @property {dfareporting(v2.6).DimensionValue} idDimensionValue Dimension value for the ID of the asset. This is a read-only, auto-generated field.
* @property {string} mimeType Detected MIME type for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID.
* @property {dfareporting(v2.6).OffsetPosition} offset Offset position for an asset in collapsed mode. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA and all VPAID. Additionally, only applicable to assets whose displayType is ASSET_DISPLAY_TYPE_EXPANDING or ASSET_DISPLAY_TYPE_PEEL_DOWN.
* @property {boolean} originalBackup Whether the backup asset is original or changed by the user in DCM. Applicable to the following creative types: all RICH_MEDIA.
* @property {dfareporting(v2.6).OffsetPosition} position Offset position for an asset. Applicable to the following creative types: all RICH_MEDIA.
* @property {string} positionLeftUnit Offset left unit for an asset. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.
* @property {string} positionTopUnit Offset top unit for an asset. This is a read-only field if the asset displayType is ASSET_DISPLAY_TYPE_OVERLAY. Applicable to the following creative types: all RICH_MEDIA.
* @property {string} progressiveServingUrl Progressive URL for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID.
* @property {boolean} pushdown Whether the asset pushes down other content. Applicable to the following creative types: all RICH_MEDIA. Additionally, only applicable when the asset offsets are 0, the collapsedSize.width matches size.width, and the collapsedSize.height is less than size.height.
* @property {number} pushdownDuration Pushdown duration in seconds for an asset. Must be between 0 and 9.99. Applicable to the following creative types: all RICH_MEDIA.Additionally, only applicable when the asset pushdown field is true, the offsets are 0, the collapsedSize.width matches size.width, and the collapsedSize.height is less than size.height.
* @property {string} role Role of the asset in relation to creative. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT. This is a required field.
PRIMARY applies to DISPLAY, FLASH_INPAGE, HTML5_BANNER, IMAGE, DISPLAY_IMAGE_GALLERY, all RICH_MEDIA (which may contain multiple primary assets), and all VPAID creatives.
BACKUP_IMAGE applies to FLASH_INPAGE, HTML5_BANNER, all RICH_MEDIA, and all VPAID creatives. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.
ADDITIONAL_IMAGE and ADDITIONAL_FLASH apply to FLASH_INPAGE creatives.
OTHER refers to assets from sources other than DCM, such as Studio uploaded assets, applicable to all RICH_MEDIA and all VPAID creatives.
PARENT_VIDEO refers to videos uploaded by the user in DCM and is applicable to INSTREAM_VIDEO and VPAID_LINEAR_VIDEO creatives.
TRANSCODED_VIDEO refers to videos transcoded by DCM from PARENT_VIDEO assets and is applicable to INSTREAM_VIDEO and VPAID_LINEAR_VIDEO creatives.
ALTERNATE_VIDEO refers to the DCM representation of child asset videos from Studio, and is applicable to VPAID_LINEAR_VIDEO creatives. These cannot be added or removed within DCM.
For VPAID_LINEAR_VIDEO creatives, PARENT_VIDEO, TRANSCODED_VIDEO and ALTERNATE_VIDEO assets that are marked active serve as backup in case the VPAID creative cannot be served. Only PARENT_VIDEO assets can be added or removed for an INSTREAM_VIDEO or VPAID_LINEAR_VIDEO creative.
* @property {dfareporting(v2.6).Size} size Size associated with this creative asset. This is a required field when applicable; however for IMAGE and FLASH_INPAGE, creatives if left blank, this field will be automatically set using the actual size of the associated image asset. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY, FLASH_INPAGE, HTML5_BANNER, IMAGE, and all RICH_MEDIA. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.
* @property {boolean} sslCompliant Whether the asset is SSL-compliant. This is a read-only field. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT.
* @property {string} startTimeType Initial wait time type before making the asset visible. Applicable to the following creative types: all RICH_MEDIA.
* @property {string} streamingServingUrl Streaming URL for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID.
* @property {boolean} transparency Whether the asset is transparent. Applicable to the following creative types: all RICH_MEDIA. Additionally, only applicable to HTML5 assets.
* @property {boolean} verticallyLocked Whether the asset is vertically locked. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.
* @property {number} videoDuration Detected video duration for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID.
* @property {string} windowMode Window mode options for flash assets. Applicable to the following creative types: FLASH_INPAGE, RICH_MEDIA_DISPLAY_EXPANDING, RICH_MEDIA_IM_EXPAND, RICH_MEDIA_DISPLAY_BANNER, and RICH_MEDIA_INPAGE_FLOATING.
* @property {integer} zIndex zIndex value of an asset. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.Additionally, only applicable to assets whose displayType is NOT one of the following types: ASSET_DISPLAY_TYPE_INPAGE or ASSET_DISPLAY_TYPE_OVERLAY.
* @property {string} zipFilename File name of zip file. This is a read-only field. Applicable to the following creative types: HTML5_BANNER.
* @property {string} zipFilesize Size of zip file. This is a read-only field. Applicable to the following creative types: HTML5_BANNER.
*/
/**
* @typedef CreativeAssetId
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} name Name of the creative asset. This is a required field while inserting an asset. After insertion, this assetIdentifier is used to identify the uploaded asset. Characters in the name must be alphanumeric or one of the following: ".-_ ". Spaces are allowed.
* @property {string} type Type of asset to upload. This is a required field. FLASH and IMAGE are no longer supported for new uploads. All image assets should use HTML_IMAGE.
*/
/**
* @typedef CreativeAssetMetadata
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).CreativeAssetId} assetIdentifier ID of the creative asset. This is a required field.
* @property {dfareporting(v2.6).ClickTag[]} clickTags List of detected click tags for assets. This is a read-only auto-generated field.
* @property {string[]} detectedFeatures List of feature dependencies for the creative asset that are detected by DCM. Feature dependencies are features that a browser must be able to support in order to render your HTML5 creative correctly. This is a read-only, auto-generated field.
* @property {string} id Numeric ID of the asset. This is a read-only, auto-generated field.
* @property {dfareporting(v2.6).DimensionValue} idDimensionValue Dimension value for the numeric ID of the asset. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#creativeAssetMetadata".
* @property {string[]} warnedValidationRules Rules validated during code generation that generated a warning. This is a read-only, auto-generated field.
Possible values are:
- "ADMOB_REFERENCED"
- "ASSET_FORMAT_UNSUPPORTED_DCM"
- "ASSET_INVALID"
- "CLICK_TAG_HARD_CODED"
- "CLICK_TAG_INVALID"
- "CLICK_TAG_IN_GWD"
- "CLICK_TAG_MISSING"
- "CLICK_TAG_MORE_THAN_ONE"
- "CLICK_TAG_NON_TOP_LEVEL"
- "COMPONENT_UNSUPPORTED_DCM"
- "ENABLER_UNSUPPORTED_METHOD_DCM"
- "EXTERNAL_FILE_REFERENCED"
- "FILE_DETAIL_EMPTY"
- "FILE_TYPE_INVALID"
- "GWD_PROPERTIES_INVALID"
- "HTML5_FEATURE_UNSUPPORTED"
- "LINKED_FILE_NOT_FOUND"
- "MAX_FLASH_VERSION_11"
- "MRAID_REFERENCED"
- "NOT_SSL_COMPLIANT"
- "ORPHANED_ASSET"
- "PRIMARY_HTML_MISSING"
- "SVG_INVALID"
- "ZIP_INVALID"
*/
/**
* @typedef CreativeAssetSelection
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} defaultAssetId A creativeAssets[].id. This should refer to one of the parent assets in this creative, and will be served if none of the rules match. This is a required field.
* @property {dfareporting(v2.6).Rule[]} rules Rules determine which asset will be served to a viewer. Rules will be evaluated in the order in which they are stored in this list. This list must contain at least one rule. Applicable to INSTREAM_VIDEO creatives.
*/
/**
* @typedef CreativeAssignment
* @memberOf! dfareporting(v2.6)
* @type object
* @property {boolean} active Whether this creative assignment is active. When true, the creative will be included in the ad's rotation.
* @property {boolean} applyEventTags Whether applicable event tags should fire when this creative assignment is rendered. If this value is unset when the ad is inserted or updated, it will default to true for all creative types EXCEPT for INTERNAL_REDIRECT, INTERSTITIAL_INTERNAL_REDIRECT, and INSTREAM_VIDEO.
* @property {dfareporting(v2.6).ClickThroughUrl} clickThroughUrl Click-through URL of the creative assignment.
* @property {dfareporting(v2.6).CompanionClickThroughOverride[]} companionCreativeOverrides Companion creative overrides for this creative assignment. Applicable to video ads.
* @property {dfareporting(v2.6).CreativeGroupAssignment[]} creativeGroupAssignments Creative group assignments for this creative assignment. Only one assignment per creative group number is allowed for a maximum of two assignments.
* @property {string} creativeId ID of the creative to be assigned. This is a required field.
* @property {dfareporting(v2.6).DimensionValue} creativeIdDimensionValue Dimension value for the ID of the creative. This is a read-only, auto-generated field.
* @property {string} endTime Date and time that the assigned creative should stop serving. Must be later than the start time.
* @property {dfareporting(v2.6).RichMediaExitOverride[]} richMediaExitOverrides Rich media exit overrides for this creative assignment.
Applicable when the creative type is any of the following:
- RICH_MEDIA_INPAGE
- RICH_MEDIA_INPAGE_FLOATING
- RICH_MEDIA_IM_EXPAND
- RICH_MEDIA_EXPANDING
- RICH_MEDIA_INTERSTITIAL_FLOAT
- RICH_MEDIA_MOBILE_IN_APP
- RICH_MEDIA_MULTI_FLOATING
- RICH_MEDIA_PEEL_DOWN
- ADVANCED_BANNER
- VPAID_LINEAR
- VPAID_NON_LINEAR
* @property {integer} sequence Sequence number of the creative assignment, applicable when the rotation type is CREATIVE_ROTATION_TYPE_SEQUENTIAL.
* @property {boolean} sslCompliant Whether the creative to be assigned is SSL-compliant. This is a read-only field that is auto-generated when the ad is inserted or updated.
* @property {string} startTime Date and time that the assigned creative should start serving.
* @property {integer} weight Weight of the creative assignment, applicable when the rotation type is CREATIVE_ROTATION_TYPE_RANDOM.
*/
/**
* @typedef CreativeCustomEvent
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} advertiserCustomEventId Unique ID of this event used by DDM Reporting and Data Transfer. This is a read-only field.
* @property {string} advertiserCustomEventName User-entered name for the event.
* @property {string} advertiserCustomEventType Type of the event. This is a read-only field.
* @property {string} artworkLabel Artwork label column, used to link events in DCM back to events in Studio. This is a required field and should not be modified after insertion.
* @property {string} artworkType Artwork type used by the creative.This is a read-only field.
* @property {string} exitUrl Exit URL of the event. This field is used only for exit events.
* @property {string} id ID of this event. This is a required field and should not be modified after insertion.
* @property {dfareporting(v2.6).PopupWindowProperties} popupWindowProperties Properties for rich media popup windows. This field is used only for exit events.
* @property {string} targetType Target type used by the event.
* @property {string} videoReportingId Video reporting ID, used to differentiate multiple videos in a single creative. This is a read-only field.
*/
/**
* @typedef CreativeField
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} accountId Account ID of this creative field. This is a read-only field that can be left blank.
* @property {string} advertiserId Advertiser ID of this creative field. This is a required field on insertion.
* @property {dfareporting(v2.6).DimensionValue} advertiserIdDimensionValue Dimension value for the ID of the advertiser. This is a read-only, auto-generated field.
* @property {string} id ID of this creative field. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#creativeField".
* @property {string} name Name of this creative field. This is a required field and must be less than 256 characters long and unique among creative fields of the same advertiser.
* @property {string} subaccountId Subaccount ID of this creative field. This is a read-only field that can be left blank.
*/
/**
* @typedef CreativeFieldAssignment
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} creativeFieldId ID of the creative field.
* @property {string} creativeFieldValueId ID of the creative field value.
*/
/**
* @typedef CreativeFieldValue
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} id ID of this creative field value. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#creativeFieldValue".
* @property {string} value Value of this creative field value. It needs to be less than 256 characters in length and unique per creative field.
*/
/**
* @typedef CreativeFieldValuesListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).CreativeFieldValue[]} creativeFieldValues Creative field value collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#creativeFieldValuesListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
*/
/**
* @typedef CreativeFieldsListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).CreativeField[]} creativeFields Creative field collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#creativeFieldsListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
*/
/**
* @typedef CreativeGroup
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} accountId Account ID of this creative group. This is a read-only field that can be left blank.
* @property {string} advertiserId Advertiser ID of this creative group. This is a required field on insertion.
* @property {dfareporting(v2.6).DimensionValue} advertiserIdDimensionValue Dimension value for the ID of the advertiser. This is a read-only, auto-generated field.
* @property {integer} groupNumber Subgroup of the creative group. Assign your creative groups to one of the following subgroups in order to filter or manage them more easily. This field is required on insertion and is read-only after insertion.
Acceptable values are:
- 1
- 2
* @property {string} id ID of this creative group. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#creativeGroup".
* @property {string} name Name of this creative group. This is a required field and must be less than 256 characters long and unique among creative groups of the same advertiser.
* @property {string} subaccountId Subaccount ID of this creative group. This is a read-only field that can be left blank.
*/
/**
* @typedef CreativeGroupAssignment
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} creativeGroupId ID of the creative group to be assigned.
* @property {string} creativeGroupNumber Creative group number of the creative group assignment.
*/
/**
* @typedef CreativeGroupsListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).CreativeGroup[]} creativeGroups Creative group collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#creativeGroupsListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
*/
/**
* @typedef CreativeOptimizationConfiguration
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} id ID of this creative optimization config. This field is auto-generated when the campaign is inserted or updated. It can be null for existing campaigns.
* @property {string} name Name of this creative optimization config. This is a required field and must be less than 129 characters long.
* @property {dfareporting(v2.6).OptimizationActivity[]} optimizationActivitys List of optimization activities associated with this configuration.
* @property {string} optimizationModel Optimization model for this configuration.
*/
/**
* @typedef CreativeRotation
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).CreativeAssignment[]} creativeAssignments Creative assignments in this creative rotation.
* @property {string} creativeOptimizationConfigurationId Creative optimization configuration that is used by this ad. It should refer to one of the existing optimization configurations in the ad's campaign. If it is unset or set to 0, then the campaign's default optimization configuration will be used for this ad.
* @property {string} type Type of creative rotation. Can be used to specify whether to use sequential or random rotation.
* @property {string} weightCalculationStrategy Strategy for calculating weights. Used with CREATIVE_ROTATION_TYPE_RANDOM.
*/
/**
* @typedef CreativeSettings
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} iFrameFooter Header text for iFrames for this site. Must be less than or equal to 2000 characters long.
* @property {string} iFrameHeader Header text for iFrames for this site. Must be less than or equal to 2000 characters long.
*/
/**
* @typedef CreativesListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).Creative[]} creatives Creative collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#creativesListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
*/
/**
* @typedef CrossDimensionReachReportCompatibleFields
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).Dimension[]} breakdown Dimensions which are compatible to be selected in the "breakdown" section of the report.
* @property {dfareporting(v2.6).Dimension[]} dimensionFilters Dimensions which are compatible to be selected in the "dimensionFilters" section of the report.
* @property {string} kind The kind of resource this is, in this case dfareporting#crossDimensionReachReportCompatibleFields.
* @property {dfareporting(v2.6).Metric[]} metrics Metrics which are compatible to be selected in the "metricNames" section of the report.
* @property {dfareporting(v2.6).Metric[]} overlapMetrics Metrics which are compatible to be selected in the "overlapMetricNames" section of the report.
*/
/**
* @typedef CustomFloodlightVariable
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#customFloodlightVariable".
* @property {string} type The type of custom floodlight variable to supply a value for. These map to the "u[1-20]=" in the tags.
* @property {string} value The value of the custom floodlight variable. The length of string must not exceed 50 characters.
*/
/**
* @typedef CustomRichMediaEvents
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).DimensionValue[]} filteredEventIds List of custom rich media event IDs. Dimension values must be all of type dfa:richMediaEventTypeIdAndName.
* @property {string} kind The kind of resource this is, in this case dfareporting#customRichMediaEvents.
*/
/**
* @typedef DateRange
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} endDate The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
* @property {string} kind The kind of resource this is, in this case dfareporting#dateRange.
* @property {string} relativeDateRange The date range relative to the date of when the report is run.
* @property {string} startDate The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
*/
/**
* @typedef DayPartTargeting
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string[]} daysOfWeek Days of the week when the ad will serve.
Acceptable values are:
- "SUNDAY"
- "MONDAY"
- "TUESDAY"
- "WEDNESDAY"
- "THURSDAY"
- "FRIDAY"
- "SATURDAY"
* @property {integer[]} hoursOfDay Hours of the day when the ad will serve. Must be an integer between 0 and 23 (inclusive), where 0 is midnight to 1 AM, and 23 is 11 PM to midnight. Can be specified with days of week, in which case the ad would serve during these hours on the specified days. For example, if Monday, Wednesday, Friday are the days of week specified and 9-10am, 3-5pm (hours 9, 15, and 16) is specified, the ad would serve Monday, Wednesdays, and Fridays at 9-10am and 3-5pm.
* @property {boolean} userLocalTime Whether or not to use the user's local time. If false, the America/New York time zone applies.
*/
/**
* @typedef DefaultClickThroughEventTagProperties
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} defaultClickThroughEventTagId ID of the click-through event tag to apply to all ads in this entity's scope.
* @property {boolean} overrideInheritedEventTag Whether this entity should override the inherited default click-through event tag with its own defined value.
*/
/**
* @typedef DeliverySchedule
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).FrequencyCap} frequencyCap Limit on the number of times an individual user can be served the ad within a specified period of time.
* @property {boolean} hardCutoff Whether or not hard cutoff is enabled. If true, the ad will not serve after the end date and time. Otherwise the ad will continue to be served until it has reached its delivery goals.
* @property {string} impressionRatio Impression ratio for this ad. This ratio determines how often each ad is served relative to the others. For example, if ad A has an impression ratio of 1 and ad B has an impression ratio of 3, then DCM will serve ad B three times as often as ad A. Must be between 1 and 10.
* @property {string} priority Serving priority of an ad, with respect to other ads. The lower the priority number, the greater the priority with which it is served.
*/
/**
* @typedef DfpSettings
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} dfp_network_code DFP network code for this directory site.
* @property {string} dfp_network_name DFP network name for this directory site.
* @property {boolean} programmaticPlacementAccepted Whether this directory site accepts programmatic placements.
* @property {boolean} pubPaidPlacementAccepted Whether this directory site accepts publisher-paid tags.
* @property {boolean} publisherPortalOnly Whether this directory site is available only via DoubleClick Publisher Portal.
*/
/**
* @typedef Dimension
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} kind The kind of resource this is, in this case dfareporting#dimension.
* @property {string} name The dimension name, e.g. dfa:advertiser
*/
/**
* @typedef DimensionFilter
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} dimensionName The name of the dimension to filter.
* @property {string} kind The kind of resource this is, in this case dfareporting#dimensionFilter.
* @property {string} value The value of the dimension to filter.
*/
/**
* @typedef DimensionValue
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} dimensionName The name of the dimension.
* @property {string} etag The eTag of this response for caching purposes.
* @property {string} id The ID associated with the value if available.
* @property {string} kind The kind of resource this is, in this case dfareporting#dimensionValue.
* @property {string} matchType Determines how the 'value' field is matched when filtering. If not specified, defaults to EXACT. If set to WILDCARD_EXPRESSION, '*' is allowed as a placeholder for variable length character sequences, and it can be escaped with a backslash. Note, only paid search dimensions ('dfa:paidSearch*') allow a matchType other than EXACT.
* @property {string} value The value of the dimension.
*/
/**
* @typedef DimensionValueList
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} etag The eTag of this response for caching purposes.
* @property {dfareporting(v2.6).DimensionValue[]} items The dimension values returned in this response.
* @property {string} kind The kind of list this is, in this case dfareporting#dimensionValueList.
* @property {string} nextPageToken Continuation token used to page through dimension values. To retrieve the next page of results, set the next request's "pageToken" to the value of this field. The page token is only valid for a limited amount of time and should not be persisted.
*/
/**
* @typedef DimensionValueRequest
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} dimensionName The name of the dimension for which values should be requested.
* @property {string} endDate The end date of the date range for which to retrieve dimension values. A string of the format "yyyy-MM-dd".
* @property {dfareporting(v2.6).DimensionFilter[]} filters The list of filters by which to filter values. The filters are ANDed.
* @property {string} kind The kind of request this is, in this case dfareporting#dimensionValueRequest.
* @property {string} startDate The start date of the date range for which to retrieve dimension values. A string of the format "yyyy-MM-dd".
*/
/**
* @typedef DirectorySite
* @memberOf! dfareporting(v2.6)
* @type object
* @property {boolean} active Whether this directory site is active.
* @property {dfareporting(v2.6).DirectorySiteContactAssignment[]} contactAssignments Directory site contacts.
* @property {string} countryId Country ID of this directory site.
* @property {string} currencyId Currency ID of this directory site.
Possible values are:
- "1" for USD
- "2" for GBP
- "3" for ESP
- "4" for SEK
- "5" for CAD
- "6" for JPY
- "7" for DEM
- "8" for AUD
- "9" for FRF
- "10" for ITL
- "11" for DKK
- "12" for NOK
- "13" for FIM
- "14" for ZAR
- "15" for IEP
- "16" for NLG
- "17" for EUR
- "18" for KRW
- "19" for TWD
- "20" for SGD
- "21" for CNY
- "22" for HKD
- "23" for NZD
- "24" for MYR
- "25" for BRL
- "26" for PTE
- "27" for MXP
- "28" for CLP
- "29" for TRY
- "30" for ARS
- "31" for PEN
- "32" for ILS
- "33" for CHF
- "34" for VEF
- "35" for COP
- "36" for GTQ
- "37" for PLN
- "39" for INR
- "40" for THB
- "41" for IDR
- "42" for CZK
- "43" for RON
- "44" for HUF
- "45" for RUB
- "46" for AED
- "47" for BGN
- "48" for HRK
* @property {string} description Description of this directory site.
* @property {string} id ID of this directory site. This is a read-only, auto-generated field.
* @property {dfareporting(v2.6).DimensionValue} idDimensionValue Dimension value for the ID of this directory site. This is a read-only, auto-generated field.
* @property {string[]} inpageTagFormats Tag types for regular placements.
Acceptable values are:
- "STANDARD"
- "IFRAME_JAVASCRIPT_INPAGE"
- "INTERNAL_REDIRECT_INPAGE"
- "JAVASCRIPT_INPAGE"
* @property {string[]} interstitialTagFormats Tag types for interstitial placements.
Acceptable values are:
- "IFRAME_JAVASCRIPT_INTERSTITIAL"
- "INTERNAL_REDIRECT_INTERSTITIAL"
- "JAVASCRIPT_INTERSTITIAL"
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#directorySite".
* @property {string} name Name of this directory site.
* @property {string} parentId Parent directory site ID.
* @property {dfareporting(v2.6).DirectorySiteSettings} settings Directory site settings.
* @property {string} url URL of this directory site.
*/
/**
* @typedef DirectorySiteContact
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} address Address of this directory site contact.
* @property {string} email Email address of this directory site contact.
* @property {string} firstName First name of this directory site contact.
* @property {string} id ID of this directory site contact. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#directorySiteContact".
* @property {string} lastName Last name of this directory site contact.
* @property {string} phone Phone number of this directory site contact.
* @property {string} role Directory site contact role.
* @property {string} title Title or designation of this directory site contact.
* @property {string} type Directory site contact type.
*/
/**
* @typedef DirectorySiteContactAssignment
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} contactId ID of this directory site contact. This is a read-only, auto-generated field.
* @property {string} visibility Visibility of this directory site contact assignment. When set to PUBLIC this contact assignment is visible to all account and agency users; when set to PRIVATE it is visible only to the site.
*/
/**
* @typedef DirectorySiteContactsListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).DirectorySiteContact[]} directorySiteContacts Directory site contact collection
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#directorySiteContactsListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
*/
/**
* @typedef DirectorySiteSettings
* @memberOf! dfareporting(v2.6)
* @type object
* @property {boolean} activeViewOptOut Whether this directory site has disabled active view creatives.
* @property {dfareporting(v2.6).DfpSettings} dfp_settings Directory site DFP settings.
* @property {boolean} instream_video_placement_accepted Whether this site accepts in-stream video ads.
* @property {boolean} interstitialPlacementAccepted Whether this site accepts interstitial ads.
* @property {boolean} nielsenOcrOptOut Whether this directory site has disabled Nielsen OCR reach ratings.
* @property {boolean} verificationTagOptOut Whether this directory site has disabled generation of Verification ins tags.
* @property {boolean} videoActiveViewOptOut Whether this directory site has disabled active view for in-stream video creatives.
*/
/**
* @typedef DirectorySitesListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).DirectorySite[]} directorySites Directory site collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#directorySitesListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
*/
/**
* @typedef DynamicTargetingKey
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#dynamicTargetingKey".
* @property {string} name Name of this dynamic targeting key. This is a required field. Must be less than 256 characters long and cannot contain commas. All characters are converted to lowercase.
* @property {string} objectId ID of the object of this dynamic targeting key. This is a required field.
* @property {string} objectType Type of the object of this dynamic targeting key. This is a required field.
*/
/**
* @typedef DynamicTargetingKeysListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).DynamicTargetingKey[]} dynamicTargetingKeys Dynamic targeting key collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#dynamicTargetingKeysListResponse".
*/
/**
* @typedef EncryptionInfo
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} encryptionEntityId The encryption entity ID. This should match the encryption configuration for ad serving or Data Transfer.
* @property {string} encryptionEntityType The encryption entity type. This should match the encryption configuration for ad serving or Data Transfer.
* @property {string} encryptionSource Describes whether the encrypted cookie was received from ad serving (the %m macro) or from Data Transfer.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#encryptionInfo".
*/
/**
* @typedef EventTag
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} accountId Account ID of this event tag. This is a read-only field that can be left blank.
* @property {string} advertiserId Advertiser ID of this event tag. This field or the campaignId field is required on insertion.
* @property {dfareporting(v2.6).DimensionValue} advertiserIdDimensionValue Dimension value for the ID of the advertiser. This is a read-only, auto-generated field.
* @property {string} campaignId Campaign ID of this event tag. This field or the advertiserId field is required on insertion.
* @property {dfareporting(v2.6).DimensionValue} campaignIdDimensionValue Dimension value for the ID of the campaign. This is a read-only, auto-generated field.
* @property {boolean} enabledByDefault Whether this event tag should be automatically enabled for all of the advertiser's campaigns and ads.
* @property {boolean} excludeFromAdxRequests Whether to remove this event tag from ads that are trafficked through DoubleClick Bid Manager to Ad Exchange. This may be useful if the event tag uses a pixel that is unapproved for Ad Exchange bids on one or more networks, such as the Google Display Network.
* @property {string} id ID of this event tag. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#eventTag".
* @property {string} name Name of this event tag. This is a required field and must be less than 256 characters long.
* @property {string} siteFilterType Site filter type for this event tag. If no type is specified then the event tag will be applied to all sites.
* @property {string[]} siteIds Filter list of site IDs associated with this event tag. The siteFilterType determines whether this is a whitelist or blacklist filter.
* @property {boolean} sslCompliant Whether this tag is SSL-compliant or not. This is a read-only field.
* @property {string} status Status of this event tag. Must be ENABLED for this event tag to fire. This is a required field.
* @property {string} subaccountId Subaccount ID of this event tag. This is a read-only field that can be left blank.
* @property {string} type Event tag type. Can be used to specify whether to use a third-party pixel, a third-party JavaScript URL, or a third-party click-through URL for either impression or click tracking. This is a required field.
* @property {string} url Payload URL for this event tag. The URL on a click-through event tag should have a landing page URL appended to the end of it. This field is required on insertion.
* @property {integer} urlEscapeLevels Number of times the landing page URL should be URL-escaped before being appended to the click-through event tag URL. Only applies to click-through event tags as specified by the event tag type.
*/
/**
* @typedef EventTagOverride
* @memberOf! dfareporting(v2.6)
* @type object
* @property {boolean} enabled Whether this override is enabled.
* @property {string} id ID of this event tag override. This is a read-only, auto-generated field.
*/
/**
* @typedef EventTagsListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).EventTag[]} eventTags Event tag collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#eventTagsListResponse".
*/
/**
* @typedef File
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).DateRange} dateRange The date range for which the file has report data. The date range will always be the absolute date range for which the report is run.
* @property {string} etag The eTag of this response for caching purposes.
* @property {string} fileName The filename of the file.
* @property {string} format The output format of the report. Only available once the file is available.
* @property {string} id The unique ID of this report file.
* @property {string} kind The kind of resource this is, in this case dfareporting#file.
* @property {string} lastModifiedTime The timestamp in milliseconds since epoch when this file was last modified.
* @property {string} reportId The ID of the report this file was generated from.
* @property {string} status The status of the report file.
* @property {object} urls The URLs where the completed report file can be downloaded.
*/
/**
* @typedef FileList
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} etag The eTag of this response for caching purposes.
* @property {dfareporting(v2.6).File[]} items The files returned in this response.
* @property {string} kind The kind of list this is, in this case dfareporting#fileList.
* @property {string} nextPageToken Continuation token used to page through files. To retrieve the next page of results, set the next request's "pageToken" to the value of this field. The page token is only valid for a limited amount of time and should not be persisted.
*/
/**
* @typedef Flight
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} endDate Inventory item flight end date.
* @property {string} rateOrCost Rate or cost of this flight.
* @property {string} startDate Inventory item flight start date.
* @property {string} units Units of this flight.
*/
/**
* @typedef FloodlightActivitiesGenerateTagResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} floodlightActivityTag Generated tag for this floodlight activity.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#floodlightActivitiesGenerateTagResponse".
*/
/**
* @typedef FloodlightActivitiesListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).FloodlightActivity[]} floodlightActivities Floodlight activity collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#floodlightActivitiesListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
*/
/**
* @typedef FloodlightActivity
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} accountId Account ID of this floodlight activity. This is a read-only field that can be left blank.
* @property {string} advertiserId Advertiser ID of this floodlight activity. If this field is left blank, the value will be copied over either from the activity group's advertiser or the existing activity's advertiser.
* @property {dfareporting(v2.6).DimensionValue} advertiserIdDimensionValue Dimension value for the ID of the advertiser. This is a read-only, auto-generated field.
* @property {string} cacheBustingType Code type used for cache busting in the generated tag.
* @property {string} countingMethod Counting method for conversions for this floodlight activity. This is a required field.
* @property {dfareporting(v2.6).FloodlightActivityDynamicTag[]} defaultTags Dynamic floodlight tags.
* @property {string} expectedUrl URL where this tag will be deployed. If specified, must be less than 256 characters long.
* @property {string} floodlightActivityGroupId Floodlight activity group ID of this floodlight activity. This is a required field.
* @property {string} floodlightActivityGroupName Name of the associated floodlight activity group. This is a read-only field.
* @property {string} floodlightActivityGroupTagString Tag string of the associated floodlight activity group. This is a read-only field.
* @property {string} floodlightActivityGroupType Type of the associated floodlight activity group. This is a read-only field.
* @property {string} floodlightConfigurationId Floodlight configuration ID of this floodlight activity. If this field is left blank, the value will be copied over either from the activity group's floodlight configuration or from the existing activity's floodlight configuration.
* @property {dfareporting(v2.6).DimensionValue} floodlightConfigurationIdDimensionValue Dimension value for the ID of the floodlight configuration. This is a read-only, auto-generated field.
* @property {boolean} hidden Whether this activity is archived.
* @property {string} id ID of this floodlight activity. This is a read-only, auto-generated field.
* @property {dfareporting(v2.6).DimensionValue} idDimensionValue Dimension value for the ID of this floodlight activity. This is a read-only, auto-generated field.
* @property {boolean} imageTagEnabled Whether the image tag is enabled for this activity.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#floodlightActivity".
* @property {string} name Name of this floodlight activity. This is a required field. Must be less than 129 characters long and cannot contain quotes.
* @property {string} notes General notes or implementation instructions for the tag.
* @property {dfareporting(v2.6).FloodlightActivityPublisherDynamicTag[]} publisherTags Publisher dynamic floodlight tags.
* @property {boolean} secure Whether this tag should use SSL.
* @property {boolean} sslCompliant Whether the floodlight activity is SSL-compliant. This is a read-only field, its value detected by the system from the floodlight tags.
* @property {boolean} sslRequired Whether this floodlight activity must be SSL-compliant.
* @property {string} subaccountId Subaccount ID of this floodlight activity. This is a read-only field that can be left blank.
* @property {string} tagFormat Tag format type for the floodlight activity. If left blank, the tag format will default to HTML.
* @property {string} tagString Value of the cat= paramter in the floodlight tag, which the ad servers use to identify the activity. This is optional: if empty, a new tag string will be generated for you. This string must be 1 to 8 characters long, with valid characters being [a-z][A-Z][0-9][-][ _ ]. This tag string must also be unique among activities of the same activity group. This field is read-only after insertion.
* @property {string[]} userDefinedVariableTypes List of the user-defined variables used by this conversion tag. These map to the "u[1-20]=" in the tags. Each of these can have a user defined type.
Acceptable values are:
- "U1"
- "U2"
- "U3"
- "U4"
- "U5"
- "U6"
- "U7"
- "U8"
- "U9"
- "U10"
- "U11"
- "U12"
- "U13"
- "U14"
- "U15"
- "U16"
- "U17"
- "U18"
- "U19"
- "U20"
*/
/**
* @typedef FloodlightActivityDynamicTag
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} id ID of this dynamic tag. This is a read-only, auto-generated field.
* @property {string} name Name of this tag.
* @property {string} tag Tag code.
*/
/**
* @typedef FloodlightActivityGroup
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} accountId Account ID of this floodlight activity group. This is a read-only field that can be left blank.
* @property {string} advertiserId Advertiser ID of this floodlight activity group. If this field is left blank, the value will be copied over either from the floodlight configuration's advertiser or from the existing activity group's advertiser.
* @property {dfareporting(v2.6).DimensionValue} advertiserIdDimensionValue Dimension value for the ID of the advertiser. This is a read-only, auto-generated field.
* @property {string} floodlightConfigurationId Floodlight configuration ID of this floodlight activity group. This is a required field.
* @property {dfareporting(v2.6).DimensionValue} floodlightConfigurationIdDimensionValue Dimension value for the ID of the floodlight configuration. This is a read-only, auto-generated field.
* @property {string} id ID of this floodlight activity group. This is a read-only, auto-generated field.
* @property {dfareporting(v2.6).DimensionValue} idDimensionValue Dimension value for the ID of this floodlight activity group. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#floodlightActivityGroup".
* @property {string} name Name of this floodlight activity group. This is a required field. Must be less than 65 characters long and cannot contain quotes.
* @property {string} subaccountId Subaccount ID of this floodlight activity group. This is a read-only field that can be left blank.
* @property {string} tagString Value of the type= parameter in the floodlight tag, which the ad servers use to identify the activity group that the activity belongs to. This is optional: if empty, a new tag string will be generated for you. This string must be 1 to 8 characters long, with valid characters being [a-z][A-Z][0-9][-][ _ ]. This tag string must also be unique among activity groups of the same floodlight configuration. This field is read-only after insertion.
* @property {string} type Type of the floodlight activity group. This is a required field that is read-only after insertion.
*/
/**
* @typedef FloodlightActivityGroupsListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).FloodlightActivityGroup[]} floodlightActivityGroups Floodlight activity group collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#floodlightActivityGroupsListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
*/
/**
* @typedef FloodlightActivityPublisherDynamicTag
* @memberOf! dfareporting(v2.6)
* @type object
* @property {boolean} clickThrough Whether this tag is applicable only for click-throughs.
* @property {string} directorySiteId Directory site ID of this dynamic tag. This is a write-only field that can be used as an alternative to the siteId field. When this resource is retrieved, only the siteId field will be populated.
* @property {dfareporting(v2.6).FloodlightActivityDynamicTag} dynamicTag Dynamic floodlight tag.
* @property {string} siteId Site ID of this dynamic tag.
* @property {dfareporting(v2.6).DimensionValue} siteIdDimensionValue Dimension value for the ID of the site. This is a read-only, auto-generated field.
* @property {boolean} viewThrough Whether this tag is applicable only for view-throughs.
*/
/**
* @typedef FloodlightConfiguration
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} accountId Account ID of this floodlight configuration. This is a read-only field that can be left blank.
* @property {string} advertiserId Advertiser ID of the parent advertiser of this floodlight configuration.
* @property {dfareporting(v2.6).DimensionValue} advertiserIdDimensionValue Dimension value for the ID of the advertiser. This is a read-only, auto-generated field.
* @property {boolean} analyticsDataSharingEnabled Whether advertiser data is shared with Google Analytics.
* @property {boolean} exposureToConversionEnabled Whether the exposure-to-conversion report is enabled. This report shows detailed pathway information on up to 10 of the most recent ad exposures seen by a user before converting.
* @property {string} firstDayOfWeek Day that will be counted as the first day of the week in reports. This is a required field.
* @property {string} id ID of this floodlight configuration. This is a read-only, auto-generated field.
* @property {dfareporting(v2.6).DimensionValue} idDimensionValue Dimension value for the ID of this floodlight configuration. This is a read-only, auto-generated field.
* @property {boolean} inAppAttributionTrackingEnabled Whether in-app attribution tracking is enabled.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#floodlightConfiguration".
* @property {dfareporting(v2.6).LookbackConfiguration} lookbackConfiguration Lookback window settings for this floodlight configuration.
* @property {string} naturalSearchConversionAttributionOption Types of attribution options for natural search conversions.
* @property {dfareporting(v2.6).OmnitureSettings} omnitureSettings Settings for DCM Omniture integration.
* @property {string[]} standardVariableTypes List of standard variables enabled for this configuration.
Acceptable values are:
- "ORD"
- "NUM"
* @property {string} subaccountId Subaccount ID of this floodlight configuration. This is a read-only field that can be left blank.
* @property {dfareporting(v2.6).TagSettings} tagSettings Configuration settings for dynamic and image floodlight tags.
* @property {dfareporting(v2.6).ThirdPartyAuthenticationToken[]} thirdPartyAuthenticationTokens List of third-party authentication tokens enabled for this configuration.
* @property {dfareporting(v2.6).UserDefinedVariableConfiguration[]} userDefinedVariableConfigurations List of user defined variables enabled for this configuration.
*/
/**
* @typedef FloodlightConfigurationsListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).FloodlightConfiguration[]} floodlightConfigurations Floodlight configuration collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#floodlightConfigurationsListResponse".
*/
/**
* @typedef FloodlightReportCompatibleFields
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).Dimension[]} dimensionFilters Dimensions which are compatible to be selected in the "dimensionFilters" section of the report.
* @property {dfareporting(v2.6).Dimension[]} dimensions Dimensions which are compatible to be selected in the "dimensions" section of the report.
* @property {string} kind The kind of resource this is, in this case dfareporting#floodlightReportCompatibleFields.
* @property {dfareporting(v2.6).Metric[]} metrics Metrics which are compatible to be selected in the "metricNames" section of the report.
*/
/**
* @typedef FrequencyCap
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} duration Duration of time, in seconds, for this frequency cap. The maximum duration is 90 days in seconds, or 7,776,000.
* @property {string} impressions Number of times an individual user can be served the ad within the specified duration. The maximum allowed is 15.
*/
/**
* @typedef FsCommand
* @memberOf! dfareporting(v2.6)
* @type object
* @property {integer} left Distance from the left of the browser.Applicable when positionOption is DISTANCE_FROM_TOP_LEFT_CORNER.
* @property {string} positionOption Position in the browser where the window will open.
* @property {integer} top Distance from the top of the browser. Applicable when positionOption is DISTANCE_FROM_TOP_LEFT_CORNER.
* @property {integer} windowHeight Height of the window.
* @property {integer} windowWidth Width of the window.
*/
/**
* @typedef GeoTargeting
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).City[]} cities Cities to be targeted. For each city only dartId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting a city, do not target or exclude the country of the city, and do not target the metro or region of the city.
* @property {dfareporting(v2.6).Country[]} countries Countries to be targeted or excluded from targeting, depending on the setting of the excludeCountries field. For each country only dartId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting or excluding a country, do not target regions, cities, metros, or postal codes in the same country.
* @property {boolean} excludeCountries Whether or not to exclude the countries in the countries field from targeting. If false, the countries field refers to countries which will be targeted by the ad.
* @property {dfareporting(v2.6).Metro[]} metros Metros to be targeted. For each metro only dmaId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting a metro, do not target or exclude the country of the metro.
* @property {dfareporting(v2.6).PostalCode[]} postalCodes Postal codes to be targeted. For each postal code only id is required. The other fields are populated automatically when the ad is inserted or updated. If targeting a postal code, do not target or exclude the country of the postal code.
* @property {dfareporting(v2.6).Region[]} regions Regions to be targeted. For each region only dartId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting a region, do not target or exclude the country of the region.
*/
/**
* @typedef InventoryItem
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} accountId Account ID of this inventory item.
* @property {dfareporting(v2.6).AdSlot[]} adSlots Ad slots of this inventory item. If this inventory item represents a standalone placement, there will be exactly one ad slot. If this inventory item represents a placement group, there will be more than one ad slot, each representing one child placement in that placement group.
* @property {string} advertiserId Advertiser ID of this inventory item.
* @property {string} contentCategoryId Content category ID of this inventory item.
* @property {string} estimatedClickThroughRate Estimated click-through rate of this inventory item.
* @property {string} estimatedConversionRate Estimated conversion rate of this inventory item.
* @property {string} id ID of this inventory item.
* @property {boolean} inPlan Whether this inventory item is in plan.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#inventoryItem".
* @property {dfareporting(v2.6).LastModifiedInfo} lastModifiedInfo Information about the most recent modification of this inventory item.
* @property {string} name Name of this inventory item. For standalone inventory items, this is the same name as that of its only ad slot. For group inventory items, this can differ from the name of any of its ad slots.
* @property {string} negotiationChannelId Negotiation channel ID of this inventory item.
* @property {string} orderId Order ID of this inventory item.
* @property {string} placementStrategyId Placement strategy ID of this inventory item.
* @property {dfareporting(v2.6).Pricing} pricing Pricing of this inventory item.
* @property {string} projectId Project ID of this inventory item.
* @property {string} rfpId RFP ID of this inventory item.
* @property {string} siteId ID of the site this inventory item is associated with.
* @property {string} subaccountId Subaccount ID of this inventory item.
* @property {string} type Type of inventory item.
*/
/**
* @typedef InventoryItemsListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).InventoryItem[]} inventoryItems Inventory item collection
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#inventoryItemsListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
*/
/**
* @typedef KeyValueTargetingExpression
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} expression Keyword expression being targeted by the ad.
*/
/**
* @typedef LandingPage
* @memberOf! dfareporting(v2.6)
* @type object
* @property {boolean} default Whether or not this landing page will be assigned to any ads or creatives that do not have a landing page assigned explicitly. Only one default landing page is allowed per campaign.
* @property {string} id ID of this landing page. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#landingPage".
* @property {string} name Name of this landing page. This is a required field. It must be less than 256 characters long, and must be unique among landing pages of the same campaign.
* @property {string} url URL of this landing page. This is a required field.
*/
/**
* @typedef LandingPagesListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#landingPagesListResponse".
* @property {dfareporting(v2.6).LandingPage[]} landingPages Landing page collection
*/
/**
* @typedef Language
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} id Language ID of this language. This is the ID used for targeting and generating reports.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#language".
* @property {string} languageCode Format of language code is an ISO 639 two-letter language code optionally followed by an underscore followed by an ISO 3166 code. Examples are "en" for English or "zh_CN" for Simplified Chinese.
* @property {string} name Name of this language.
*/
/**
* @typedef LanguageTargeting
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).Language[]} languages Languages that this ad targets. For each language only languageId is required. The other fields are populated automatically when the ad is inserted or updated.
*/
/**
* @typedef LanguagesListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#languagesListResponse".
* @property {dfareporting(v2.6).Language[]} languages Language collection.
*/
/**
* @typedef LastModifiedInfo
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} time Timestamp of the last change in milliseconds since epoch.
*/
/**
* @typedef ListPopulationClause
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).ListPopulationTerm[]} terms Terms of this list population clause. Each clause is made up of list population terms representing constraints and are joined by ORs.
*/
/**
* @typedef ListPopulationRule
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} floodlightActivityId Floodlight activity ID associated with this rule. This field can be left blank.
* @property {string} floodlightActivityName Name of floodlight activity associated with this rule. This is a read-only, auto-generated field.
* @property {dfareporting(v2.6).ListPopulationClause[]} listPopulationClauses Clauses that make up this list population rule. Clauses are joined by ANDs, and the clauses themselves are made up of list population terms which are joined by ORs.
*/
/**
* @typedef ListPopulationTerm
* @memberOf! dfareporting(v2.6)
* @type object
* @property {boolean} contains Will be true if the term should check if the user is in the list and false if the term should check if the user is not in the list. This field is only relevant when type is set to LIST_MEMBERSHIP_TERM. False by default.
* @property {boolean} negation Whether to negate the comparison result of this term during rule evaluation. This field is only relevant when type is left unset or set to CUSTOM_VARIABLE_TERM or REFERRER_TERM.
* @property {string} operator Comparison operator of this term. This field is only relevant when type is left unset or set to CUSTOM_VARIABLE_TERM or REFERRER_TERM.
* @property {string} remarketingListId ID of the list in question. This field is only relevant when type is set to LIST_MEMBERSHIP_TERM.
* @property {string} type List population term type determines the applicable fields in this object. If left unset or set to CUSTOM_VARIABLE_TERM, then variableName, variableFriendlyName, operator, value, and negation are applicable. If set to LIST_MEMBERSHIP_TERM then remarketingListId and contains are applicable. If set to REFERRER_TERM then operator, value, and negation are applicable.
* @property {string} value Literal to compare the variable to. This field is only relevant when type is left unset or set to CUSTOM_VARIABLE_TERM or REFERRER_TERM.
* @property {string} variableFriendlyName Friendly name of this term's variable. This is a read-only, auto-generated field. This field is only relevant when type is left unset or set to CUSTOM_VARIABLE_TERM.
* @property {string} variableName Name of the variable (U1, U2, etc.) being compared in this term. This field is only relevant when type is set to null, CUSTOM_VARIABLE_TERM or REFERRER_TERM.
*/
/**
* @typedef ListTargetingExpression
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} expression Expression describing which lists are being targeted by the ad.
*/
/**
* @typedef LookbackConfiguration
* @memberOf! dfareporting(v2.6)
* @type object
* @property {integer} clickDuration Lookback window, in days, from the last time a given user clicked on one of your ads. If you enter 0, clicks will not be considered as triggering events for floodlight tracking. If you leave this field blank, the default value for your account will be used.
* @property {integer} postImpressionActivitiesDuration Lookback window, in days, from the last time a given user viewed one of your ads. If you enter 0, impressions will not be considered as triggering events for floodlight tracking. If you leave this field blank, the default value for your account will be used.
*/
/**
* @typedef Metric
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} kind The kind of resource this is, in this case dfareporting#metric.
* @property {string} name The metric name, e.g. dfa:impressions
*/
/**
* @typedef Metro
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} countryCode Country code of the country to which this metro region belongs.
* @property {string} countryDartId DART ID of the country to which this metro region belongs.
* @property {string} dartId DART ID of this metro region.
* @property {string} dmaId DMA ID of this metro region. This is the ID used for targeting and generating reports, and is equivalent to metro_code.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#metro".
* @property {string} metroCode Metro code of this metro region. This is equivalent to dma_id.
* @property {string} name Name of this metro region.
*/
/**
* @typedef MetrosListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#metrosListResponse".
* @property {dfareporting(v2.6).Metro[]} metros Metro collection.
*/
/**
* @typedef MobileCarrier
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} countryCode Country code of the country to which this mobile carrier belongs.
* @property {string} countryDartId DART ID of the country to which this mobile carrier belongs.
* @property {string} id ID of this mobile carrier.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#mobileCarrier".
* @property {string} name Name of this mobile carrier.
*/
/**
* @typedef MobileCarriersListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#mobileCarriersListResponse".
* @property {dfareporting(v2.6).MobileCarrier[]} mobileCarriers Mobile carrier collection.
*/
/**
* @typedef ObjectFilter
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#objectFilter".
* @property {string[]} objectIds Applicable when status is ASSIGNED. The user has access to objects with these object IDs.
* @property {string} status Status of the filter. NONE means the user has access to none of the objects. ALL means the user has access to all objects. ASSIGNED means the user has access to the objects with IDs in the objectIds list.
*/
/**
* @typedef OffsetPosition
* @memberOf! dfareporting(v2.6)
* @type object
* @property {integer} left Offset distance from left side of an asset or a window.
* @property {integer} top Offset distance from top side of an asset or a window.
*/
/**
* @typedef OmnitureSettings
* @memberOf! dfareporting(v2.6)
* @type object
* @property {boolean} omnitureCostDataEnabled Whether placement cost data will be sent to Omniture. This property can be enabled only if omnitureIntegrationEnabled is true.
* @property {boolean} omnitureIntegrationEnabled Whether Omniture integration is enabled. This property can be enabled only when the "Advanced Ad Serving" account setting is enabled.
*/
/**
* @typedef OperatingSystem
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} dartId DART ID of this operating system. This is the ID used for targeting.
* @property {boolean} desktop Whether this operating system is for desktop.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#operatingSystem".
* @property {boolean} mobile Whether this operating system is for mobile.
* @property {string} name Name of this operating system.
*/
/**
* @typedef OperatingSystemVersion
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} id ID of this operating system version.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#operatingSystemVersion".
* @property {string} majorVersion Major version (leftmost number) of this operating system version.
* @property {string} minorVersion Minor version (number after the first dot) of this operating system version.
* @property {string} name Name of this operating system version.
* @property {dfareporting(v2.6).OperatingSystem} operatingSystem Operating system of this operating system version.
*/
/**
* @typedef OperatingSystemVersionsListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#operatingSystemVersionsListResponse".
* @property {dfareporting(v2.6).OperatingSystemVersion[]} operatingSystemVersions Operating system version collection.
*/
/**
* @typedef OperatingSystemsListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#operatingSystemsListResponse".
* @property {dfareporting(v2.6).OperatingSystem[]} operatingSystems Operating system collection.
*/
/**
* @typedef OptimizationActivity
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} floodlightActivityId Floodlight activity ID of this optimization activity. This is a required field.
* @property {dfareporting(v2.6).DimensionValue} floodlightActivityIdDimensionValue Dimension value for the ID of the floodlight activity. This is a read-only, auto-generated field.
* @property {integer} weight Weight associated with this optimization. Must be greater than 1. The weight assigned will be understood in proportion to the weights assigned to the other optimization activities.
*/
/**
* @typedef Order
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} accountId Account ID of this order.
* @property {string} advertiserId Advertiser ID of this order.
* @property {string[]} approverUserProfileIds IDs for users that have to approve documents created for this order.
* @property {string} buyerInvoiceId Buyer invoice ID associated with this order.
* @property {string} buyerOrganizationName Name of the buyer organization.
* @property {string} comments Comments in this order.
* @property {dfareporting(v2.6).OrderContact[]} contacts Contacts for this order.
* @property {string} id ID of this order. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#order".
* @property {dfareporting(v2.6).LastModifiedInfo} lastModifiedInfo Information about the most recent modification of this order.
* @property {string} name Name of this order.
* @property {string} notes Notes of this order.
* @property {string} planningTermId ID of the terms and conditions template used in this order.
* @property {string} projectId Project ID of this order.
* @property {string} sellerOrderId Seller order ID associated with this order.
* @property {string} sellerOrganizationName Name of the seller organization.
* @property {string[]} siteId Site IDs this order is associated with.
* @property {string[]} siteNames Free-form site names this order is associated with.
* @property {string} subaccountId Subaccount ID of this order.
* @property {string} termsAndConditions Terms and conditions of this order.
*/
/**
* @typedef OrderContact
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} contactInfo Free-form information about this contact. It could be any information related to this contact in addition to type, title, name, and signature user profile ID.
* @property {string} contactName Name of this contact.
* @property {string} contactTitle Title of this contact.
* @property {string} contactType Type of this contact.
* @property {string} signatureUserProfileId ID of the user profile containing the signature that will be embedded into order documents.
*/
/**
* @typedef OrderDocument
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} accountId Account ID of this order document.
* @property {string} advertiserId Advertiser ID of this order document.
* @property {string} amendedOrderDocumentId The amended order document ID of this order document. An order document can be created by optionally amending another order document so that the change history can be preserved.
* @property {string[]} approvedByUserProfileIds IDs of users who have approved this order document.
* @property {boolean} cancelled Whether this order document is cancelled.
* @property {dfareporting(v2.6).LastModifiedInfo} createdInfo Information about the creation of this order document.
* @property {string} effectiveDate Effective date of this order document.
* @property {string} id ID of this order document.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#orderDocument".
* @property {string[]} lastSentRecipients List of email addresses that received the last sent document.
* @property {string} lastSentTime Timestamp of the last email sent with this order document.
* @property {string} orderId ID of the order from which this order document is created.
* @property {string} projectId Project ID of this order document.
* @property {boolean} signed Whether this order document has been signed.
* @property {string} subaccountId Subaccount ID of this order document.
* @property {string} title Title of this order document.
* @property {string} type Type of this order document
*/
/**
* @typedef OrderDocumentsListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#orderDocumentsListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
* @property {dfareporting(v2.6).OrderDocument[]} orderDocuments Order document collection
*/
/**
* @typedef OrdersListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#ordersListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
* @property {dfareporting(v2.6).Order[]} orders Order collection.
*/
/**
* @typedef PathToConversionReportCompatibleFields
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).Dimension[]} conversionDimensions Conversion dimensions which are compatible to be selected in the "conversionDimensions" section of the report.
* @property {dfareporting(v2.6).Dimension[]} customFloodlightVariables Custom floodlight variables which are compatible to be selected in the "customFloodlightVariables" section of the report.
* @property {string} kind The kind of resource this is, in this case dfareporting#pathToConversionReportCompatibleFields.
* @property {dfareporting(v2.6).Metric[]} metrics Metrics which are compatible to be selected in the "metricNames" section of the report.
* @property {dfareporting(v2.6).Dimension[]} perInteractionDimensions Per-interaction dimensions which are compatible to be selected in the "perInteractionDimensions" section of the report.
*/
/**
* @typedef Placement
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} accountId Account ID of this placement. This field can be left blank.
* @property {string} advertiserId Advertiser ID of this placement. This field can be left blank.
* @property {dfareporting(v2.6).DimensionValue} advertiserIdDimensionValue Dimension value for the ID of the advertiser. This is a read-only, auto-generated field.
* @property {boolean} archived Whether this placement is archived.
* @property {string} campaignId Campaign ID of this placement. This field is a required field on insertion.
* @property {dfareporting(v2.6).DimensionValue} campaignIdDimensionValue Dimension value for the ID of the campaign. This is a read-only, auto-generated field.
* @property {string} comment Comments for this placement.
* @property {string} compatibility Placement compatibility. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering on desktop, on mobile devices or in mobile apps for regular or interstitial ads respectively. APP and APP_INTERSTITIAL are no longer allowed for new placement insertions. Instead, use DISPLAY or DISPLAY_INTERSTITIAL. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard. This field is required on insertion.
* @property {string} contentCategoryId ID of the content category assigned to this placement.
* @property {dfareporting(v2.6).LastModifiedInfo} createInfo Information about the creation of this placement. This is a read-only field.
* @property {string} directorySiteId Directory site ID of this placement. On insert, you must set either this field or the siteId field to specify the site associated with this placement. This is a required field that is read-only after insertion.
* @property {dfareporting(v2.6).DimensionValue} directorySiteIdDimensionValue Dimension value for the ID of the directory site. This is a read-only, auto-generated field.
* @property {string} externalId External ID for this placement.
* @property {string} id ID of this placement. This is a read-only, auto-generated field.
* @property {dfareporting(v2.6).DimensionValue} idDimensionValue Dimension value for the ID of this placement. This is a read-only, auto-generated field.
* @property {string} keyName Key name of this placement. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#placement".
* @property {dfareporting(v2.6).LastModifiedInfo} lastModifiedInfo Information about the most recent modification of this placement. This is a read-only field.
* @property {dfareporting(v2.6).LookbackConfiguration} lookbackConfiguration Lookback window settings for this placement.
* @property {string} name Name of this placement.This is a required field and must be less than 256 characters long.
* @property {boolean} paymentApproved Whether payment was approved for this placement. This is a read-only field relevant only to publisher-paid placements.
* @property {string} paymentSource Payment source for this placement. This is a required field that is read-only after insertion.
* @property {string} placementGroupId ID of this placement's group, if applicable.
* @property {dfareporting(v2.6).DimensionValue} placementGroupIdDimensionValue Dimension value for the ID of the placement group. This is a read-only, auto-generated field.
* @property {string} placementStrategyId ID of the placement strategy assigned to this placement.
* @property {dfareporting(v2.6).PricingSchedule} pricingSchedule Pricing schedule of this placement. This field is required on insertion, specifically subfields startDate, endDate and pricingType.
* @property {boolean} primary Whether this placement is the primary placement of a roadblock (placement group). You cannot change this field from true to false. Setting this field to true will automatically set the primary field on the original primary placement of the roadblock to false, and it will automatically set the roadblock's primaryPlacementId field to the ID of this placement.
* @property {dfareporting(v2.6).LastModifiedInfo} publisherUpdateInfo Information about the last publisher update. This is a read-only field.
* @property {string} siteId Site ID associated with this placement. On insert, you must set either this field or the directorySiteId field to specify the site associated with this placement. This is a required field that is read-only after insertion.
* @property {dfareporting(v2.6).DimensionValue} siteIdDimensionValue Dimension value for the ID of the site. This is a read-only, auto-generated field.
* @property {dfareporting(v2.6).Size} size Size associated with this placement. When inserting or updating a placement, only the size ID field is used. This field is required on insertion.
* @property {boolean} sslRequired Whether creatives assigned to this placement must be SSL-compliant.
* @property {string} status Third-party placement status.
* @property {string} subaccountId Subaccount ID of this placement. This field can be left blank.
* @property {string[]} tagFormats Tag formats to generate for this placement. This field is required on insertion.
Acceptable values are:
- "PLACEMENT_TAG_STANDARD"
- "PLACEMENT_TAG_IFRAME_JAVASCRIPT"
- "PLACEMENT_TAG_IFRAME_ILAYER"
- "PLACEMENT_TAG_INTERNAL_REDIRECT"
- "PLACEMENT_TAG_JAVASCRIPT"
- "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT"
- "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT"
- "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT"
- "PLACEMENT_TAG_CLICK_COMMANDS"
- "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH"
- "PLACEMENT_TAG_TRACKING"
- "PLACEMENT_TAG_TRACKING_IFRAME"
- "PLACEMENT_TAG_TRACKING_JAVASCRIPT"
* @property {dfareporting(v2.6).TagSetting} tagSetting Tag settings for this placement.
*/
/**
* @typedef PlacementAssignment
* @memberOf! dfareporting(v2.6)
* @type object
* @property {boolean} active Whether this placement assignment is active. When true, the placement will be included in the ad's rotation.
* @property {string} placementId ID of the placement to be assigned. This is a required field.
* @property {dfareporting(v2.6).DimensionValue} placementIdDimensionValue Dimension value for the ID of the placement. This is a read-only, auto-generated field.
* @property {boolean} sslRequired Whether the placement to be assigned requires SSL. This is a read-only field that is auto-generated when the ad is inserted or updated.
*/
/**
* @typedef PlacementGroup
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} accountId Account ID of this placement group. This is a read-only field that can be left blank.
* @property {string} advertiserId Advertiser ID of this placement group. This is a required field on insertion.
* @property {dfareporting(v2.6).DimensionValue} advertiserIdDimensionValue Dimension value for the ID of the advertiser. This is a read-only, auto-generated field.
* @property {boolean} archived Whether this placement group is archived.
* @property {string} campaignId Campaign ID of this placement group. This field is required on insertion.
* @property {dfareporting(v2.6).DimensionValue} campaignIdDimensionValue Dimension value for the ID of the campaign. This is a read-only, auto-generated field.
* @property {string[]} childPlacementIds IDs of placements which are assigned to this placement group. This is a read-only, auto-generated field.
* @property {string} comment Comments for this placement group.
* @property {string} contentCategoryId ID of the content category assigned to this placement group.
* @property {dfareporting(v2.6).LastModifiedInfo} createInfo Information about the creation of this placement group. This is a read-only field.
* @property {string} directorySiteId Directory site ID associated with this placement group. On insert, you must set either this field or the site_id field to specify the site associated with this placement group. This is a required field that is read-only after insertion.
* @property {dfareporting(v2.6).DimensionValue} directorySiteIdDimensionValue Dimension value for the ID of the directory site. This is a read-only, auto-generated field.
* @property {string} externalId External ID for this placement.
* @property {string} id ID of this placement group. This is a read-only, auto-generated field.
* @property {dfareporting(v2.6).DimensionValue} idDimensionValue Dimension value for the ID of this placement group. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#placementGroup".
* @property {dfareporting(v2.6).LastModifiedInfo} lastModifiedInfo Information about the most recent modification of this placement group. This is a read-only field.
* @property {string} name Name of this placement group. This is a required field and must be less than 256 characters long.
* @property {string} placementGroupType Type of this placement group. A package is a simple group of placements that acts as a single pricing point for a group of tags. A roadblock is a group of placements that not only acts as a single pricing point, but also assumes that all the tags in it will be served at the same time. A roadblock requires one of its assigned placements to be marked as primary for reporting. This field is required on insertion.
* @property {string} placementStrategyId ID of the placement strategy assigned to this placement group.
* @property {dfareporting(v2.6).PricingSchedule} pricingSchedule Pricing schedule of this placement group. This field is required on insertion.
* @property {string} primaryPlacementId ID of the primary placement, used to calculate the media cost of a roadblock (placement group). Modifying this field will automatically modify the primary field on all affected roadblock child placements.
* @property {dfareporting(v2.6).DimensionValue} primaryPlacementIdDimensionValue Dimension value for the ID of the primary placement. This is a read-only, auto-generated field.
* @property {string} siteId Site ID associated with this placement group. On insert, you must set either this field or the directorySiteId field to specify the site associated with this placement group. This is a required field that is read-only after insertion.
* @property {dfareporting(v2.6).DimensionValue} siteIdDimensionValue Dimension value for the ID of the site. This is a read-only, auto-generated field.
* @property {string} subaccountId Subaccount ID of this placement group. This is a read-only field that can be left blank.
*/
/**
* @typedef PlacementGroupsListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#placementGroupsListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
* @property {dfareporting(v2.6).PlacementGroup[]} placementGroups Placement group collection.
*/
/**
* @typedef PlacementStrategiesListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#placementStrategiesListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
* @property {dfareporting(v2.6).PlacementStrategy[]} placementStrategies Placement strategy collection.
*/
/**
* @typedef PlacementStrategy
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} accountId Account ID of this placement strategy.This is a read-only field that can be left blank.
* @property {string} id ID of this placement strategy. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#placementStrategy".
* @property {string} name Name of this placement strategy. This is a required field. It must be less than 256 characters long and unique among placement strategies of the same account.
*/
/**
* @typedef PlacementTag
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} placementId Placement ID
* @property {dfareporting(v2.6).TagData[]} tagDatas Tags generated for this placement.
*/
/**
* @typedef PlacementsGenerateTagsResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#placementsGenerateTagsResponse".
* @property {dfareporting(v2.6).PlacementTag[]} placementTags Set of generated tags for the specified placements.
*/
/**
* @typedef PlacementsListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#placementsListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
* @property {dfareporting(v2.6).Placement[]} placements Placement collection.
*/
/**
* @typedef PlatformType
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} id ID of this platform type.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#platformType".
* @property {string} name Name of this platform type.
*/
/**
* @typedef PlatformTypesListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#platformTypesListResponse".
* @property {dfareporting(v2.6).PlatformType[]} platformTypes Platform type collection.
*/
/**
* @typedef PopupWindowProperties
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).Size} dimension Popup dimension for a creative. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA and all VPAID
* @property {dfareporting(v2.6).OffsetPosition} offset Upper-left corner coordinates of the popup window. Applicable if positionType is COORDINATES.
* @property {string} positionType Popup window position either centered or at specific coordinate.
* @property {boolean} showAddressBar Whether to display the browser address bar.
* @property {boolean} showMenuBar Whether to display the browser menu bar.
* @property {boolean} showScrollBar Whether to display the browser scroll bar.
* @property {boolean} showStatusBar Whether to display the browser status bar.
* @property {boolean} showToolBar Whether to display the browser tool bar.
* @property {string} title Title of popup window.
*/
/**
* @typedef PostalCode
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} code Postal code. This is equivalent to the id field.
* @property {string} countryCode Country code of the country to which this postal code belongs.
* @property {string} countryDartId DART ID of the country to which this postal code belongs.
* @property {string} id ID of this postal code.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#postalCode".
*/
/**
* @typedef PostalCodesListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#postalCodesListResponse".
* @property {dfareporting(v2.6).PostalCode[]} postalCodes Postal code collection.
*/
/**
* @typedef Pricing
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} capCostType Cap cost type of this inventory item.
* @property {string} endDate End date of this inventory item.
* @property {dfareporting(v2.6).Flight[]} flights Flights of this inventory item. A flight (a.k.a. pricing period) represents the inventory item pricing information for a specific period of time.
* @property {string} groupType Group type of this inventory item if it represents a placement group. Is null otherwise. There are two type of placement groups: PLANNING_PLACEMENT_GROUP_TYPE_PACKAGE is a simple group of inventory items that acts as a single pricing point for a group of tags. PLANNING_PLACEMENT_GROUP_TYPE_ROADBLOCK is a group of inventory items that not only acts as a single pricing point, but also assumes that all the tags in it will be served at the same time. A roadblock requires one of its assigned inventory items to be marked as primary.
* @property {string} pricingType Pricing type of this inventory item.
* @property {string} startDate Start date of this inventory item.
*/
/**
* @typedef PricingSchedule
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} capCostOption Placement cap cost option.
* @property {boolean} disregardOverdelivery Whether cap costs are ignored by ad serving.
* @property {string} endDate Placement end date. This date must be later than, or the same day as, the placement start date, but not later than the campaign end date. If, for example, you set 6/25/2015 as both the start and end dates, the effective placement date is just that day only, 6/25/2015. The hours, minutes, and seconds of the end date should not be set, as doing so will result in an error. This field is required on insertion.
* @property {boolean} flighted Whether this placement is flighted. If true, pricing periods will be computed automatically.
* @property {string} floodlightActivityId Floodlight activity ID associated with this placement. This field should be set when placement pricing type is set to PRICING_TYPE_CPA.
* @property {dfareporting(v2.6).PricingSchedulePricingPeriod[]} pricingPeriods Pricing periods for this placement.
* @property {string} pricingType Placement pricing type. This field is required on insertion.
* @property {string} startDate Placement start date. This date must be later than, or the same day as, the campaign start date. The hours, minutes, and seconds of the start date should not be set, as doing so will result in an error. This field is required on insertion.
* @property {string} testingStartDate Testing start date of this placement. The hours, minutes, and seconds of the start date should not be set, as doing so will result in an error.
*/
/**
* @typedef PricingSchedulePricingPeriod
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} endDate Pricing period end date. This date must be later than, or the same day as, the pricing period start date, but not later than the placement end date. The period end date can be the same date as the period start date. If, for example, you set 6/25/2015 as both the start and end dates, the effective pricing period date is just that day only, 6/25/2015. The hours, minutes, and seconds of the end date should not be set, as doing so will result in an error.
* @property {string} pricingComment Comments for this pricing period.
* @property {string} rateOrCostNanos Rate or cost of this pricing period.
* @property {string} startDate Pricing period start date. This date must be later than, or the same day as, the placement start date. The hours, minutes, and seconds of the start date should not be set, as doing so will result in an error.
* @property {string} units Units of this pricing period.
*/
/**
* @typedef Project
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} accountId Account ID of this project.
* @property {string} advertiserId Advertiser ID of this project.
* @property {string} audienceAgeGroup Audience age group of this project.
* @property {string} audienceGender Audience gender of this project.
* @property {string} budget Budget of this project in the currency specified by the current account. The value stored in this field represents only the non-fractional amount. For example, for USD, the smallest value that can be represented by this field is 1 US dollar.
* @property {string} clientBillingCode Client billing code of this project.
* @property {string} clientName Name of the project client.
* @property {string} endDate End date of the project.
* @property {string} id ID of this project. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#project".
* @property {dfareporting(v2.6).LastModifiedInfo} lastModifiedInfo Information about the most recent modification of this project.
* @property {string} name Name of this project.
* @property {string} overview Overview of this project.
* @property {string} startDate Start date of the project.
* @property {string} subaccountId Subaccount ID of this project.
* @property {string} targetClicks Number of clicks that the advertiser is targeting.
* @property {string} targetConversions Number of conversions that the advertiser is targeting.
* @property {string} targetCpaNanos CPA that the advertiser is targeting.
* @property {string} targetCpcNanos CPC that the advertiser is targeting.
* @property {string} targetCpmActiveViewNanos vCPM from Active View that the advertiser is targeting.
* @property {string} targetCpmNanos CPM that the advertiser is targeting.
* @property {string} targetImpressions Number of impressions that the advertiser is targeting.
*/
/**
* @typedef ProjectsListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#projectsListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
* @property {dfareporting(v2.6).Project[]} projects Project collection.
*/
/**
* @typedef ReachReportCompatibleFields
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).Dimension[]} dimensionFilters Dimensions which are compatible to be selected in the "dimensionFilters" section of the report.
* @property {dfareporting(v2.6).Dimension[]} dimensions Dimensions which are compatible to be selected in the "dimensions" section of the report.
* @property {string} kind The kind of resource this is, in this case dfareporting#reachReportCompatibleFields.
* @property {dfareporting(v2.6).Metric[]} metrics Metrics which are compatible to be selected in the "metricNames" section of the report.
* @property {dfareporting(v2.6).Metric[]} pivotedActivityMetrics Metrics which are compatible to be selected as activity metrics to pivot on in the "activities" section of the report.
* @property {dfareporting(v2.6).Metric[]} reachByFrequencyMetrics Metrics which are compatible to be selected in the "reachByFrequencyMetricNames" section of the report.
*/
/**
* @typedef Recipient
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} deliveryType The delivery type for the recipient.
* @property {string} email The email address of the recipient.
* @property {string} kind The kind of resource this is, in this case dfareporting#recipient.
*/
/**
* @typedef Region
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} countryCode Country code of the country to which this region belongs.
* @property {string} countryDartId DART ID of the country to which this region belongs.
* @property {string} dartId DART ID of this region.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#region".
* @property {string} name Name of this region.
* @property {string} regionCode Region code.
*/
/**
* @typedef RegionsListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#regionsListResponse".
* @property {dfareporting(v2.6).Region[]} regions Region collection.
*/
/**
* @typedef RemarketingList
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} accountId Account ID of this remarketing list. This is a read-only, auto-generated field that is only returned in GET requests.
* @property {boolean} active Whether this remarketing list is active.
* @property {string} advertiserId Dimension value for the advertiser ID that owns this remarketing list. This is a required field.
* @property {dfareporting(v2.6).DimensionValue} advertiserIdDimensionValue Dimension value for the ID of the advertiser. This is a read-only, auto-generated field.
* @property {string} description Remarketing list description.
* @property {string} id Remarketing list ID. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#remarketingList".
* @property {string} lifeSpan Number of days that a user should remain in the remarketing list without an impression.
* @property {dfareporting(v2.6).ListPopulationRule} listPopulationRule Rule used to populate the remarketing list with users.
* @property {string} listSize Number of users currently in the list. This is a read-only field.
* @property {string} listSource Product from which this remarketing list was originated.
* @property {string} name Name of the remarketing list. This is a required field. Must be no greater than 128 characters long.
* @property {string} subaccountId Subaccount ID of this remarketing list. This is a read-only, auto-generated field that is only returned in GET requests.
*/
/**
* @typedef RemarketingListShare
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#remarketingListShare".
* @property {string} remarketingListId Remarketing list ID. This is a read-only, auto-generated field.
* @property {string[]} sharedAccountIds Accounts that the remarketing list is shared with.
* @property {string[]} sharedAdvertiserIds Advertisers that the remarketing list is shared with.
*/
/**
* @typedef RemarketingListsListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#remarketingListsListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
* @property {dfareporting(v2.6).RemarketingList[]} remarketingLists Remarketing list collection.
*/
/**
* @typedef Report
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} accountId The account ID to which this report belongs.
* @property {object} criteria The report criteria for a report of type "STANDARD".
* @property {object} crossDimensionReachCriteria The report criteria for a report of type "CROSS_DIMENSION_REACH".
* @property {object} delivery The report's email delivery settings.
* @property {string} etag The eTag of this response for caching purposes.
* @property {string} fileName The filename used when generating report files for this report.
* @property {object} floodlightCriteria The report criteria for a report of type "FLOODLIGHT".
* @property {string} format The output format of the report. If not specified, default format is "CSV". Note that the actual format in the completed report file might differ if for instance the report's size exceeds the format's capabilities. "CSV" will then be the fallback format.
* @property {string} id The unique ID identifying this report resource.
* @property {string} kind The kind of resource this is, in this case dfareporting#report.
* @property {string} lastModifiedTime The timestamp (in milliseconds since epoch) of when this report was last modified.
* @property {string} name The name of the report.
* @property {string} ownerProfileId The user profile id of the owner of this report.
* @property {object} pathToConversionCriteria The report criteria for a report of type "PATH_TO_CONVERSION".
* @property {object} reachCriteria The report criteria for a report of type "REACH".
* @property {object} schedule The report's schedule. Can only be set if the report's 'dateRange' is a relative date range and the relative date range is not "TODAY".
* @property {string} subAccountId The subaccount ID to which this report belongs if applicable.
* @property {string} type The type of the report.
*/
/**
* @typedef ReportCompatibleFields
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).Dimension[]} dimensionFilters Dimensions which are compatible to be selected in the "dimensionFilters" section of the report.
* @property {dfareporting(v2.6).Dimension[]} dimensions Dimensions which are compatible to be selected in the "dimensions" section of the report.
* @property {string} kind The kind of resource this is, in this case dfareporting#reportCompatibleFields.
* @property {dfareporting(v2.6).Metric[]} metrics Metrics which are compatible to be selected in the "metricNames" section of the report.
* @property {dfareporting(v2.6).Metric[]} pivotedActivityMetrics Metrics which are compatible to be selected as activity metrics to pivot on in the "activities" section of the report.
*/
/**
* @typedef ReportList
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} etag The eTag of this response for caching purposes.
* @property {dfareporting(v2.6).Report[]} items The reports returned in this response.
* @property {string} kind The kind of list this is, in this case dfareporting#reportList.
* @property {string} nextPageToken Continuation token used to page through reports. To retrieve the next page of results, set the next request's "pageToken" to the value of this field. The page token is only valid for a limited amount of time and should not be persisted.
*/
/**
* @typedef ReportsConfiguration
* @memberOf! dfareporting(v2.6)
* @type object
* @property {boolean} exposureToConversionEnabled Whether the exposure to conversion report is enabled. This report shows detailed pathway information on up to 10 of the most recent ad exposures seen by a user before converting.
* @property {dfareporting(v2.6).LookbackConfiguration} lookbackConfiguration Default lookback windows for new advertisers in this account.
* @property {string} reportGenerationTimeZoneId Report generation time zone ID of this account. This is a required field that can only be changed by a superuser.
Acceptable values are:
- "1" for "America/New_York"
- "2" for "Europe/London"
- "3" for "Europe/Paris"
- "4" for "Africa/Johannesburg"
- "5" for "Asia/Jerusalem"
- "6" for "Asia/Shanghai"
- "7" for "Asia/Hong_Kong"
- "8" for "Asia/Tokyo"
- "9" for "Australia/Sydney"
- "10" for "Asia/Dubai"
- "11" for "America/Los_Angeles"
- "12" for "Pacific/Auckland"
- "13" for "America/Sao_Paulo"
*/
/**
* @typedef RichMediaExitOverride
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).ClickThroughUrl} clickThroughUrl Click-through URL of this rich media exit override. Applicable if the enabled field is set to true.
* @property {boolean} enabled Whether to use the clickThroughUrl. If false, the creative-level exit will be used.
* @property {string} exitId ID for the override to refer to a specific exit in the creative.
*/
/**
* @typedef Rule
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} assetId A creativeAssets[].id. This should refer to one of the parent assets in this creative. This is a required field.
* @property {string} name A user-friendly name for this rule. This is a required field.
* @property {string} targetingTemplateId A targeting template ID. The targeting from the targeting template will be used to determine whether this asset should be served. This is a required field.
*/
/**
* @typedef Site
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} accountId Account ID of this site. This is a read-only field that can be left blank.
* @property {boolean} approved Whether this site is approved.
* @property {string} directorySiteId Directory site associated with this site. This is a required field that is read-only after insertion.
* @property {dfareporting(v2.6).DimensionValue} directorySiteIdDimensionValue Dimension value for the ID of the directory site. This is a read-only, auto-generated field.
* @property {string} id ID of this site. This is a read-only, auto-generated field.
* @property {dfareporting(v2.6).DimensionValue} idDimensionValue Dimension value for the ID of this site. This is a read-only, auto-generated field.
* @property {string} keyName Key name of this site. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#site".
* @property {string} name Name of this site.This is a required field. Must be less than 128 characters long. If this site is under a subaccount, the name must be unique among sites of the same subaccount. Otherwise, this site is a top-level site, and the name must be unique among top-level sites of the same account.
* @property {dfareporting(v2.6).SiteContact[]} siteContacts Site contacts.
* @property {dfareporting(v2.6).SiteSettings} siteSettings Site-wide settings.
* @property {string} subaccountId Subaccount ID of this site. This is a read-only field that can be left blank.
*/
/**
* @typedef SiteContact
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} address Address of this site contact.
* @property {string} contactType Site contact type.
* @property {string} email Email address of this site contact. This is a required field.
* @property {string} firstName First name of this site contact.
* @property {string} id ID of this site contact. This is a read-only, auto-generated field.
* @property {string} lastName Last name of this site contact.
* @property {string} phone Primary phone number of this site contact.
* @property {string} title Title or designation of this site contact.
*/
/**
* @typedef SiteSettings
* @memberOf! dfareporting(v2.6)
* @type object
* @property {boolean} activeViewOptOut Whether active view creatives are disabled for this site.
* @property {dfareporting(v2.6).CreativeSettings} creativeSettings Site-wide creative settings.
* @property {boolean} disableBrandSafeAds Whether brand safe ads are disabled for this site.
* @property {boolean} disableNewCookie Whether new cookies are disabled for this site.
* @property {dfareporting(v2.6).LookbackConfiguration} lookbackConfiguration Lookback window settings for this site.
* @property {dfareporting(v2.6).TagSetting} tagSetting Configuration settings for dynamic and image floodlight tags.
* @property {boolean} videoActiveViewOptOut Whether Verification and ActiveView are disabled for in-stream video creatives on this site. The same setting videoActiveViewOptOut exists on the directory site level -- the opt out occurs if either of these settings are true. These settings are distinct from DirectorySites.settings.activeViewOptOut or Sites.siteSettings.activeViewOptOut which only apply to display ads. However, Accounts.activeViewOptOut opts out both video traffic, as well as display ads, from Verification and ActiveView.
*/
/**
* @typedef SitesListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#sitesListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
* @property {dfareporting(v2.6).Site[]} sites Site collection.
*/
/**
* @typedef Size
* @memberOf! dfareporting(v2.6)
* @type object
* @property {integer} height Height of this size.
* @property {boolean} iab IAB standard size. This is a read-only, auto-generated field.
* @property {string} id ID of this size. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#size".
* @property {integer} width Width of this size.
*/
/**
* @typedef SizesListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#sizesListResponse".
* @property {dfareporting(v2.6).Size[]} sizes Size collection.
*/
/**
* @typedef SortedDimension
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} kind The kind of resource this is, in this case dfareporting#sortedDimension.
* @property {string} name The name of the dimension.
* @property {string} sortOrder An optional sort order for the dimension column.
*/
/**
* @typedef Subaccount
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} accountId ID of the account that contains this subaccount. This is a read-only field that can be left blank.
* @property {string[]} availablePermissionIds IDs of the available user role permissions for this subaccount.
* @property {string} id ID of this subaccount. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#subaccount".
* @property {string} name Name of this subaccount. This is a required field. Must be less than 128 characters long and be unique among subaccounts of the same account.
*/
/**
* @typedef SubaccountsListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#subaccountsListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
* @property {dfareporting(v2.6).Subaccount[]} subaccounts Subaccount collection.
*/
/**
* @typedef TagData
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} adId Ad associated with this placement tag.
* @property {string} clickTag Tag string to record a click.
* @property {string} creativeId Creative associated with this placement tag.
* @property {string} format TagData tag format of this tag.
* @property {string} impressionTag Tag string for serving an ad.
*/
/**
* @typedef TagSetting
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} additionalKeyValues Additional key-values to be included in tags. Each key-value pair must be of the form key=value, and pairs must be separated by a semicolon (;). Keys and values must not contain commas. For example, id=2;color=red is a valid value for this field.
* @property {boolean} includeClickThroughUrls Whether static landing page URLs should be included in the tags. This setting applies only to placements.
* @property {boolean} includeClickTracking Whether click-tracking string should be included in the tags.
* @property {string} keywordOption Option specifying how keywords are embedded in ad tags. This setting can be used to specify whether keyword placeholders are inserted in placement tags for this site. Publishers can then add keywords to those placeholders.
*/
/**
* @typedef TagSettings
* @memberOf! dfareporting(v2.6)
* @type object
* @property {boolean} dynamicTagEnabled Whether dynamic floodlight tags are enabled.
* @property {boolean} imageTagEnabled Whether image tags are enabled.
*/
/**
* @typedef TargetWindow
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} customHtml User-entered value.
* @property {string} targetWindowOption Type of browser window for which the backup image of the flash creative can be displayed.
*/
/**
* @typedef TargetableRemarketingList
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} accountId Account ID of this remarketing list. This is a read-only, auto-generated field that is only returned in GET requests.
* @property {boolean} active Whether this targetable remarketing list is active.
* @property {string} advertiserId Dimension value for the advertiser ID that owns this targetable remarketing list.
* @property {dfareporting(v2.6).DimensionValue} advertiserIdDimensionValue Dimension value for the ID of the advertiser.
* @property {string} description Targetable remarketing list description.
* @property {string} id Targetable remarketing list ID.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#targetableRemarketingList".
* @property {string} lifeSpan Number of days that a user should remain in the targetable remarketing list without an impression.
* @property {string} listSize Number of users currently in the list. This is a read-only field.
* @property {string} listSource Product from which this targetable remarketing list was originated.
* @property {string} name Name of the targetable remarketing list. Is no greater than 128 characters long.
* @property {string} subaccountId Subaccount ID of this remarketing list. This is a read-only, auto-generated field that is only returned in GET requests.
*/
/**
* @typedef TargetableRemarketingListsListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#targetableRemarketingListsListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
* @property {dfareporting(v2.6).TargetableRemarketingList[]} targetableRemarketingLists Targetable remarketing list collection.
*/
/**
* @typedef TargetingTemplate
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} accountId Account ID of this targeting template. This field, if left unset, will be auto-generated on insert and is read-only after insert.
* @property {string} advertiserId Advertiser ID of this targeting template. This is a required field on insert and is read-only after insert.
* @property {dfareporting(v2.6).DimensionValue} advertiserIdDimensionValue Dimension value for the ID of the advertiser. This is a read-only, auto-generated field.
* @property {dfareporting(v2.6).DayPartTargeting} dayPartTargeting Time and day targeting criteria.
* @property {dfareporting(v2.6).GeoTargeting} geoTargeting Geographical targeting criteria.
* @property {string} id ID of this targeting template. This is a read-only, auto-generated field.
* @property {dfareporting(v2.6).KeyValueTargetingExpression} keyValueTargetingExpression Key-value targeting criteria.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#targetingTemplate".
* @property {dfareporting(v2.6).LanguageTargeting} languageTargeting Language targeting criteria.
* @property {dfareporting(v2.6).ListTargetingExpression} listTargetingExpression Remarketing list targeting criteria.
* @property {string} name Name of this targeting template. This field is required. It must be less than 256 characters long and unique within an advertiser.
* @property {string} subaccountId Subaccount ID of this targeting template. This field, if left unset, will be auto-generated on insert and is read-only after insert.
* @property {dfareporting(v2.6).TechnologyTargeting} technologyTargeting Technology platform targeting criteria.
*/
/**
* @typedef TargetingTemplatesListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#targetingTemplatesListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
* @property {dfareporting(v2.6).TargetingTemplate[]} targetingTemplates Targeting template collection.
*/
/**
* @typedef TechnologyTargeting
* @memberOf! dfareporting(v2.6)
* @type object
* @property {dfareporting(v2.6).Browser[]} browsers Browsers that this ad targets. For each browser either set browserVersionId or dartId along with the version numbers. If both are specified, only browserVersionId will be used. The other fields are populated automatically when the ad is inserted or updated.
* @property {dfareporting(v2.6).ConnectionType[]} connectionTypes Connection types that this ad targets. For each connection type only id is required. The other fields are populated automatically when the ad is inserted or updated.
* @property {dfareporting(v2.6).MobileCarrier[]} mobileCarriers Mobile carriers that this ad targets. For each mobile carrier only id is required, and the other fields are populated automatically when the ad is inserted or updated. If targeting a mobile carrier, do not set targeting for any zip codes.
* @property {dfareporting(v2.6).OperatingSystemVersion[]} operatingSystemVersions Operating system versions that this ad targets. To target all versions, use operatingSystems. For each operating system version, only id is required. The other fields are populated automatically when the ad is inserted or updated. If targeting an operating system version, do not set targeting for the corresponding operating system in operatingSystems.
* @property {dfareporting(v2.6).OperatingSystem[]} operatingSystems Operating systems that this ad targets. To target specific versions, use operatingSystemVersions. For each operating system only dartId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting an operating system, do not set targeting for operating system versions for the same operating system.
* @property {dfareporting(v2.6).PlatformType[]} platformTypes Platform types that this ad targets. For example, desktop, mobile, or tablet. For each platform type, only id is required, and the other fields are populated automatically when the ad is inserted or updated.
*/
/**
* @typedef ThirdPartyAuthenticationToken
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} name Name of the third-party authentication token.
* @property {string} value Value of the third-party authentication token. This is a read-only, auto-generated field.
*/
/**
* @typedef ThirdPartyTrackingUrl
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} thirdPartyUrlType Third-party URL type for in-stream video creatives.
* @property {string} url URL for the specified third-party URL type.
*/
/**
* @typedef UserDefinedVariableConfiguration
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} dataType Data type for the variable. This is a required field.
* @property {string} reportName User-friendly name for the variable which will appear in reports. This is a required field, must be less than 64 characters long, and cannot contain the following characters: ""<>".
* @property {string} variableType Variable name in the tag. This is a required field.
*/
/**
* @typedef UserProfile
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} accountId The account ID to which this profile belongs.
* @property {string} accountName The account name this profile belongs to.
* @property {string} etag The eTag of this response for caching purposes.
* @property {string} kind The kind of resource this is, in this case dfareporting#userProfile.
* @property {string} profileId The unique ID of the user profile.
* @property {string} subAccountId The sub account ID this profile belongs to if applicable.
* @property {string} subAccountName The sub account name this profile belongs to if applicable.
* @property {string} userName The user name.
*/
/**
* @typedef UserProfileList
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} etag The eTag of this response for caching purposes.
* @property {dfareporting(v2.6).UserProfile[]} items The user profiles returned in this response.
* @property {string} kind The kind of list this is, in this case dfareporting#userProfileList.
*/
/**
* @typedef UserRole
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} accountId Account ID of this user role. This is a read-only field that can be left blank.
* @property {boolean} defaultUserRole Whether this is a default user role. Default user roles are created by the system for the account/subaccount and cannot be modified or deleted. Each default user role comes with a basic set of preassigned permissions.
* @property {string} id ID of this user role. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#userRole".
* @property {string} name Name of this user role. This is a required field. Must be less than 256 characters long. If this user role is under a subaccount, the name must be unique among sites of the same subaccount. Otherwise, this user role is a top-level user role, and the name must be unique among top-level user roles of the same account.
* @property {string} parentUserRoleId ID of the user role that this user role is based on or copied from. This is a required field.
* @property {dfareporting(v2.6).UserRolePermission[]} permissions List of permissions associated with this user role.
* @property {string} subaccountId Subaccount ID of this user role. This is a read-only field that can be left blank.
*/
/**
* @typedef UserRolePermission
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} availability Levels of availability for a user role permission.
* @property {string} id ID of this user role permission.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#userRolePermission".
* @property {string} name Name of this user role permission.
* @property {string} permissionGroupId ID of the permission group that this user role permission belongs to.
*/
/**
* @typedef UserRolePermissionGroup
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} id ID of this user role permission.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#userRolePermissionGroup".
* @property {string} name Name of this user role permission group.
*/
/**
* @typedef UserRolePermissionGroupsListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#userRolePermissionGroupsListResponse".
* @property {dfareporting(v2.6).UserRolePermissionGroup[]} userRolePermissionGroups User role permission group collection.
*/
/**
* @typedef UserRolePermissionsListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#userRolePermissionsListResponse".
* @property {dfareporting(v2.6).UserRolePermission[]} userRolePermissions User role permission collection.
*/
/**
* @typedef UserRolesListResponse
* @memberOf! dfareporting(v2.6)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#userRolesListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
* @property {dfareporting(v2.6).UserRole[]} userRoles User role collection.
*/
module.exports = Dfareporting;
|
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 1791 1792 1793 1794 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822 1823 1824 1825 1826 1827 1828 1829 1830 1831 1832 1833 1834 1835 1836 1837 1838 1839 1840 1841 1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853 1854 1855 1856 1857 1858 1859 1860 1861 1862 1863 1864 1865 1866 1867 1868 1869 1870 1871 1872 1873 1874 1875 1876 1877 1878 1879 1880 1881 1882 1883 1884 1885 1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896 1897 1898 1899 1900 1901 1902 1903 1904 1905 1906 1907 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 1939 1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 2026 2027 2028 2029 2030 2031 2032 2033 2034 2035 2036 2037 2038 2039 2040 2041 2042 2043 2044 2045 2046 2047 2048 2049 2050 2051 2052 2053 2054 2055 2056 2057 2058 2059 2060 2061 2062 2063 2064 2065 2066 2067 2068 2069 2070 2071 2072 2073 2074 2075 2076 2077 2078 2079 2080 2081 2082 2083 2084 2085 2086 2087 2088 2089 2090 2091 2092 2093 2094 2095 2096 2097 2098 2099 2100 2101 2102 2103 2104 2105 2106 2107 2108 2109 2110 2111 2112 2113 2114 2115 2116 2117 2118 2119 2120 2121 2122 2123 2124 2125 2126 2127 2128 2129 2130 2131 2132 2133 2134 2135 2136 2137 2138 2139 2140 2141 2142 2143 2144 2145 2146 2147 2148 2149 2150 2151 2152 2153 2154 2155 2156 2157 2158 2159 2160 2161 2162 2163 2164 2165 2166 2167 2168 2169 2170 2171 2172 2173 2174 2175 2176 2177 2178 2179 2180 2181 2182 2183 2184 2185 2186 2187 2188 2189 2190 2191 2192 2193 2194 2195 2196 2197 2198 2199 2200 2201 2202 2203 2204 2205 2206 2207 2208 2209 2210 2211 2212 2213 2214 2215 2216 2217 2218 2219 2220 2221 2222 2223 2224 2225 2226 2227 2228 2229 2230 2231 2232 2233 2234 2235 2236 2237 2238 2239 2240 2241 2242 2243 2244 2245 2246 2247 2248 2249 2250 2251 2252 2253 2254 2255 2256 2257 2258 2259 2260 2261 2262 2263 2264 2265 2266 2267 2268 2269 2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 2280 2281 2282 2283 2284 2285 2286 2287 2288 2289 2290 2291 2292 2293 2294 2295 2296 2297 2298 2299 2300 2301 2302 2303 2304 2305 2306 2307 2308 2309 2310 2311 2312 2313 2314 2315 2316 2317 2318 2319 2320 2321 2322 2323 2324 2325 2326 2327 2328 2329 2330 2331 2332 2333 2334 2335 2336 2337 2338 2339 2340 2341 2342 2343 2344 2345 2346 2347 2348 2349 2350 2351 2352 2353 2354 2355 2356 2357 2358 2359 2360 2361 2362 2363 2364 2365 2366 2367 2368 2369 2370 2371 2372 2373 2374 2375 2376 2377 2378 2379 2380 2381 2382 2383 2384 2385 2386 2387 2388 2389 2390 2391 2392 2393 2394 2395 2396 2397 2398 2399 2400 2401 2402 2403 2404 2405 2406 2407 2408 2409 2410 2411 2412 2413 2414 2415 2416 2417 2418 2419 2420 2421 2422 2423 2424 2425 2426 2427 2428 2429 2430 2431 2432 2433 2434 2435 2436 2437 2438 2439 2440 2441 2442 2443 2444 2445 2446 2447 2448 2449 2450 2451 2452 2453 2454 2455 2456 2457 2458 2459 2460 2461 2462 2463 2464 2465 2466 2467 2468 2469 2470 2471 2472 2473 2474 2475 2476 2477 2478 2479 2480 2481 2482 2483 2484 2485 2486 2487 2488 2489 2490 2491 2492 2493 2494 2495 2496 2497 2498 2499 2500 2501 2502 2503 2504 2505 2506 2507 2508 2509 2510 2511 2512 2513 2514 2515 2516 2517 2518 2519 2520 2521 2522 2523 2524 2525 2526 2527 2528 2529 2530 2531 2532 2533 2534 2535 2536 2537 2538 2539 2540 2541 2542 2543 2544 2545 2546 2547 2548 2549 2550 2551 2552 2553 2554 2555 2556 2557 2558 2559 2560 2561 2562 2563 2564 2565 2566 2567 2568 2569 2570 2571 2572 2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 2730 2731 2732 2733 2734 2735 2736 2737 2738 2739 2740 2741 2742 2743 2744 2745 2746 2747 2748 2749 2750 2751 2752 2753 2754 2755 2756 2757 2758 2759 2760 2761 2762 2763 2764 2765 2766 2767 2768 2769 2770 2771 2772 2773 2774 2775 2776 2777 2778 2779 2780 2781 2782 2783 2784 2785 2786 2787 2788 2789 2790 2791 2792 2793 2794 2795 2796 2797 2798 2799 2800 2801 2802 2803 2804 2805 2806 2807 2808 2809 2810 2811 2812 2813 2814 2815 2816 2817 2818 2819 2820 2821 2822 2823 2824 2825 2826 2827 2828 2829 2830 2831 2832 2833 2834 2835 2836 2837 2838 2839 2840 2841 2842 2843 2844 2845 2846 2847 2848 2849 2850 2851 2852 2853 2854 2855 2856 2857 2858 2859 2860 2861 2862 2863 2864 2865 2866 2867 2868 2869 2870 2871 2872 2873 2874 2875 2876 2877 2878 2879 2880 2881 2882 2883 2884 2885 2886 2887 2888 2889 2890 2891 2892 2893 2894 2895 2896 2897 2898 2899 2900 2901 2902 2903 2904 2905 2906 2907 2908 2909 2910 2911 2912 2913 2914 2915 2916 2917 2918 2919 2920 2921 2922 2923 2924 2925 2926 2927 2928 2929 2930 2931 2932 2933 2934 2935 2936 2937 2938 2939 2940 2941 2942 2943 2944 2945 2946 2947 2948 2949 2950 2951 2952 2953 2954 2955 2956 2957 2958 2959 2960 2961 2962 2963 2964 2965 2966 2967 2968 2969 2970 2971 2972 2973 2974 2975 2976 2977 2978 2979 2980 2981 2982 2983 2984 2985 2986 2987 2988 2989 2990 2991 2992 2993 2994 2995 2996 2997 2998 2999 3000 3001 3002 3003 3004 3005 3006 3007 3008 3009 3010 3011 3012 3013 3014 3015 3016 3017 3018 3019 3020 3021 3022 3023 3024 3025 3026 3027 3028 3029 3030 3031 3032 3033 3034 3035 3036 3037 3038 3039 3040 3041 3042 3043 3044 3045 3046 3047 3048 3049 3050 3051 3052 3053 3054 3055 3056 3057 3058 3059 3060 3061 3062 3063 3064 3065 3066 3067 3068 3069 3070 3071 3072 3073 3074 3075 3076 3077 3078 3079 3080 3081 3082 3083 3084 3085 3086 3087 3088 3089 3090 3091 3092 3093 3094 3095 3096 3097 3098 3099 3100 3101 3102 3103 3104 3105 3106 3107 3108 3109 3110 3111 3112 3113 3114 3115 3116 3117 3118 3119 3120 3121 3122 3123 3124 3125 3126 3127 3128 3129 3130 3131 3132 3133 3134 3135 3136 3137 3138 3139 3140 3141 3142 3143 3144 3145 3146 3147 3148 3149 3150 3151 3152 3153 3154 3155 3156 3157 3158 3159 3160 3161 3162 3163 3164 3165 3166 3167 3168 3169 3170 3171 3172 3173 3174 3175 3176 3177 3178 3179 3180 3181 3182 3183 3184 3185 3186 3187 3188 3189 3190 3191 3192 3193 3194 3195 3196 3197 3198 3199 3200 3201 3202 3203 3204 3205 3206 3207 3208 3209 3210 3211 3212 3213 3214 3215 3216 3217 3218 3219 3220 3221 3222 3223 3224 3225 3226 3227 3228 3229 3230 3231 3232 3233 3234 3235 3236 3237 3238 3239 3240 3241 3242 3243 3244 3245 3246 3247 3248 3249 3250 3251 3252 3253 3254 3255 3256 3257 3258 3259 3260 3261 3262 3263 3264 3265 3266 3267 3268 3269 3270 3271 3272 3273 3274 3275 3276 3277 3278 3279 3280 3281 3282 3283 3284 3285 3286 3287 3288 3289 3290 3291 3292 3293 3294 3295 3296 3297 3298 3299 3300 3301 3302 3303 3304 3305 3306 3307 3308 3309 3310 3311 3312 3313 3314 3315 3316 3317 3318 3319 3320 3321 3322 3323 3324 3325 3326 3327 3328 3329 3330 3331 3332 3333 3334 3335 3336 3337 3338 3339 3340 3341 3342 3343 3344 3345 3346 3347 3348 3349 3350 3351 3352 3353 3354 3355 3356 3357 3358 3359 3360 3361 3362 3363 3364 3365 3366 3367 3368 3369 3370 3371 3372 3373 3374 3375 3376 3377 3378 3379 3380 3381 3382 3383 3384 3385 3386 3387 3388 3389 3390 3391 3392 3393 3394 3395 3396 3397 3398 3399 3400 3401 3402 3403 3404 3405 3406 3407 3408 3409 3410 3411 3412 3413 3414 3415 3416 3417 3418 3419 3420 3421 3422 3423 3424 3425 3426 3427 3428 3429 3430 3431 3432 3433 3434 3435 3436 3437 3438 3439 3440 3441 3442 3443 3444 3445 3446 3447 3448 3449 3450 3451 3452 3453 3454 3455 3456 3457 3458 3459 3460 3461 3462 3463 3464 3465 3466 3467 3468 3469 3470 3471 3472 3473 3474 3475 3476 3477 3478 3479 3480 3481 3482 3483 3484 3485 3486 3487 3488 3489 3490 3491 3492 3493 3494 3495 3496 3497 3498 3499 3500 3501 3502 3503 3504 3505 3506 3507 3508 3509 3510 3511 3512 3513 3514 3515 3516 3517 3518 3519 3520 3521 3522 3523 3524 3525 3526 3527 3528 3529 3530 3531 3532 3533 3534 3535 3536 3537 3538 3539 3540 3541 3542 3543 3544 3545 3546 3547 3548 3549 3550 3551 3552 3553 3554 3555 3556 3557 3558 3559 3560 3561 3562 3563 3564 3565 3566 3567 3568 3569 3570 3571 3572 3573 3574 3575 3576 3577 3578 3579 3580 3581 3582 3583 3584 3585 3586 3587 3588 3589 3590 3591 3592 3593 3594 3595 3596 3597 3598 3599 3600 3601 3602 3603 3604 3605 3606 3607 3608 3609 3610 3611 3612 3613 3614 3615 3616 3617 3618 3619 3620 3621 3622 3623 3624 3625 3626 3627 3628 3629 3630 3631 3632 3633 3634 3635 3636 3637 3638 3639 3640 3641 3642 3643 3644 3645 3646 3647 3648 3649 3650 3651 3652 3653 3654 3655 3656 3657 3658 3659 3660 3661 3662 3663 3664 3665 3666 3667 3668 3669 3670 3671 3672 3673 3674 3675 3676 3677 3678 3679 3680 3681 3682 3683 3684 3685 3686 3687 3688 3689 3690 3691 3692 3693 3694 3695 3696 3697 3698 3699 3700 3701 3702 3703 3704 3705 3706 3707 3708 3709 3710 3711 3712 3713 3714 3715 3716 3717 3718 3719 3720 3721 3722 3723 3724 3725 3726 3727 3728 3729 3730 3731 3732 3733 3734 3735 3736 3737 3738 3739 3740 3741 3742 3743 3744 3745 3746 3747 3748 3749 3750 3751 3752 3753 3754 3755 3756 3757 3758 3759 3760 3761 3762 3763 3764 3765 3766 3767 3768 3769 3770 3771 3772 3773 3774 3775 3776 3777 3778 3779 3780 3781 3782 3783 3784 3785 3786 3787 3788 3789 3790 3791 3792 3793 3794 3795 3796 3797 3798 3799 3800 3801 3802 3803 3804 3805 3806 3807 3808 3809 3810 3811 3812 3813 3814 3815 3816 3817 3818 3819 3820 3821 3822 3823 3824 3825 3826 3827 3828 3829 3830 3831 3832 3833 3834 3835 3836 3837 3838 3839 3840 3841 3842 3843 3844 3845 3846 3847 3848 3849 3850 3851 3852 3853 3854 3855 3856 3857 3858 3859 3860 3861 3862 3863 3864 3865 3866 3867 3868 3869 3870 3871 3872 3873 3874 3875 3876 3877 3878 3879 3880 3881 3882 3883 3884 3885 3886 3887 3888 3889 3890 3891 3892 3893 3894 3895 3896 3897 3898 3899 3900 3901 3902 3903 3904 3905 3906 3907 3908 3909 3910 3911 3912 3913 3914 3915 3916 3917 3918 3919 3920 3921 3922 3923 3924 3925 3926 3927 3928 3929 3930 3931 3932 3933 3934 3935 3936 3937 3938 3939 3940 3941 3942 3943 3944 3945 3946 3947 3948 3949 3950 3951 3952 3953 3954 3955 3956 3957 3958 3959 3960 3961 3962 3963 3964 3965 3966 3967 3968 3969 3970 3971 3972 3973 3974 3975 3976 3977 3978 3979 3980 3981 3982 3983 3984 3985 3986 3987 3988 3989 3990 3991 3992 3993 3994 3995 3996 3997 3998 3999 4000 4001 4002 4003 4004 4005 4006 4007 4008 4009 4010 4011 4012 4013 4014 4015 4016 4017 4018 4019 4020 4021 4022 4023 4024 4025 4026 4027 4028 4029 4030 4031 4032 4033 4034 4035 4036 4037 4038 4039 4040 4041 4042 4043 4044 4045 4046 4047 4048 4049 4050 4051 4052 4053 4054 4055 4056 4057 4058 4059 4060 4061 4062 4063 4064 4065 4066 4067 4068 4069 4070 4071 4072 4073 4074 4075 4076 4077 4078 4079 4080 4081 4082 4083 4084 4085 4086 4087 4088 4089 4090 4091 4092 4093 4094 4095 4096 4097 4098 4099 4100 4101 4102 4103 4104 4105 4106 4107 4108 4109 4110 4111 4112 4113 4114 4115 4116 4117 4118 4119 4120 4121 4122 4123 4124 4125 4126 4127 4128 4129 4130 4131 4132 4133 4134 4135 4136 4137 4138 4139 4140 4141 4142 4143 4144 4145 4146 4147 4148 4149 4150 4151 4152 4153 4154 4155 4156 4157 4158 4159 4160 4161 4162 4163 4164 4165 4166 4167 4168 4169 4170 4171 4172 4173 4174 4175 4176 4177 4178 4179 4180 4181 4182 4183 4184 4185 4186 4187 4188 4189 4190 4191 4192 4193 4194 4195 4196 4197 4198 4199 4200 4201 4202 4203 4204 4205 4206 4207 4208 4209 4210 4211 4212 4213 4214 4215 4216 4217 4218 4219 4220 4221 4222 4223 4224 4225 4226 4227 4228 4229 4230 4231 4232 4233 4234 4235 4236 4237 4238 4239 4240 4241 4242 4243 4244 4245 4246 4247 4248 4249 4250 4251 4252 4253 4254 4255 4256 4257 4258 4259 4260 4261 4262 4263 4264 4265 4266 4267 4268 4269 4270 4271 4272 4273 4274 4275 4276 4277 4278 4279 4280 4281 4282 4283 4284 4285 4286 4287 4288 4289 4290 4291 4292 4293 4294 4295 4296 4297 4298 4299 4300 4301 4302 4303 4304 4305 4306 4307 4308 4309 4310 4311 4312 4313 4314 4315 4316 4317 4318 4319 4320 4321 4322 4323 4324 4325 4326 4327 4328 4329 4330 4331 4332 4333 4334 4335 4336 4337 4338 4339 4340 4341 4342 4343 4344 4345 4346 4347 4348 4349 4350 4351 4352 4353 4354 4355 4356 4357 4358 4359 4360 4361 4362 4363 4364 4365 4366 4367 4368 4369 4370 4371 4372 4373 4374 4375 4376 4377 4378 4379 4380 4381 4382 4383 4384 4385 4386 4387 4388 4389 4390 4391 4392 4393 4394 4395 4396 4397 4398 4399 4400 4401 4402 4403 4404 4405 4406 4407 4408 4409 4410 4411 4412 4413 4414 4415 4416 4417 4418 4419 4420 4421 4422 4423 4424 4425 4426 4427 4428 4429 4430 4431 4432 4433 4434 4435 4436 4437 4438 4439 4440 4441 4442 4443 4444 4445 4446 4447 4448 4449 4450 4451 4452 4453 4454 4455 4456 4457 4458 4459 4460 4461 4462 4463 4464 4465 4466 4467 4468 4469 4470 4471 4472 4473 4474 4475 4476 4477 4478 4479 4480 4481 4482 4483 4484 4485 4486 4487 4488 4489 4490 4491 4492 4493 4494 4495 4496 4497 4498 4499 4500 4501 4502 4503 4504 4505 4506 4507 4508 4509 4510 4511 4512 4513 4514 4515 4516 4517 4518 4519 4520 4521 4522 4523 4524 4525 4526 4527 4528 4529 4530 4531 4532 4533 4534 4535 4536 4537 4538 4539 4540 4541 4542 4543 4544 4545 4546 4547 4548 4549 4550 4551 4552 4553 4554 4555 4556 4557 4558 4559 4560 4561 4562 4563 4564 4565 4566 4567 4568 4569 4570 4571 4572 4573 4574 4575 4576 4577 4578 4579 4580 4581 4582 4583 4584 4585 4586 4587 4588 4589 4590 4591 4592 4593 4594 4595 4596 4597 4598 4599 4600 4601 4602 4603 4604 4605 4606 4607 4608 4609 4610 4611 4612 4613 4614 4615 4616 4617 4618 4619 4620 4621 4622 4623 4624 4625 4626 4627 4628 4629 4630 4631 4632 4633 4634 4635 4636 4637 4638 4639 4640 4641 4642 4643 4644 4645 4646 4647 4648 4649 4650 4651 4652 4653 4654 4655 4656 4657 4658 4659 4660 4661 4662 4663 4664 4665 4666 4667 4668 4669 4670 4671 4672 4673 4674 4675 4676 4677 4678 4679 4680 4681 4682 4683 4684 4685 4686 4687 4688 4689 4690 4691 4692 4693 4694 4695 4696 4697 4698 4699 4700 4701 4702 4703 4704 4705 4706 4707 4708 4709 4710 4711 4712 4713 4714 4715 4716 4717 4718 4719 4720 4721 4722 4723 4724 4725 4726 4727 4728 4729 4730 4731 4732 4733 4734 4735 4736 4737 4738 4739 4740 4741 4742 4743 4744 4745 4746 4747 4748 4749 4750 4751 4752 4753 4754 4755 4756 4757 4758 4759 4760 4761 4762 4763 4764 4765 4766 4767 4768 4769 4770 4771 4772 4773 4774 4775 4776 4777 4778 4779 4780 4781 4782 4783 4784 4785 4786 4787 4788 4789 4790 4791 4792 4793 4794 4795 4796 4797 4798 4799 4800 4801 4802 4803 4804 4805 4806 4807 4808 4809 4810 4811 4812 4813 4814 4815 4816 4817 4818 4819 4820 4821 4822 4823 4824 4825 4826 4827 4828 4829 4830 4831 4832 4833 4834 4835 4836 4837 4838 4839 4840 4841 4842 4843 4844 4845 4846 4847 4848 4849 4850 4851 4852 4853 4854 4855 4856 4857 4858 4859 4860 4861 4862 4863 4864 4865 4866 4867 4868 4869 4870 4871 4872 4873 4874 4875 4876 4877 4878 4879 4880 4881 4882 4883 4884 4885 4886 4887 4888 4889 4890 4891 4892 4893 4894 4895 4896 4897 4898 4899 4900 4901 4902 4903 4904 4905 4906 4907 4908 4909 4910 4911 4912 4913 4914 4915 4916 4917 4918 4919 4920 4921 4922 4923 4924 4925 4926 4927 4928 4929 4930 4931 4932 4933 4934 4935 4936 4937 4938 4939 4940 4941 4942 4943 4944 4945 4946 4947 4948 4949 4950 4951 4952 4953 4954 4955 4956 4957 4958 4959 4960 4961 4962 4963 4964 4965 4966 4967 4968 4969 4970 4971 4972 4973 4974 4975 4976 4977 4978 4979 4980 4981 4982 4983 4984 4985 4986 4987 4988 4989 4990 4991 4992 4993 4994 4995 4996 4997 4998 4999 5000 5001 5002 5003 5004 5005 5006 5007 5008 5009 5010 5011 5012 5013 5014 5015 5016 5017 5018 5019 5020 5021 5022 5023 5024 5025 5026 5027 5028 5029 5030 5031 5032 5033 5034 5035 5036 5037 5038 5039 5040 5041 5042 5043 5044 5045 5046 5047 5048 5049 5050 5051 5052 5053 5054 5055 5056 5057 5058 5059 5060 5061 5062 5063 5064 5065 5066 5067 5068 5069 5070 5071 5072 5073 5074 5075 5076 5077 5078 5079 5080 5081 5082 5083 5084 5085 5086 5087 5088 5089 5090 5091 5092 5093 5094 5095 5096 5097 5098 5099 5100 5101 5102 5103 5104 5105 5106 5107 5108 5109 5110 5111 5112 5113 5114 5115 5116 5117 5118 5119 5120 5121 5122 5123 5124 5125 5126 5127 5128 5129 5130 5131 5132 5133 5134 5135 5136 5137 5138 5139 5140 5141 5142 5143 5144 5145 5146 5147 5148 5149 5150 5151 5152 5153 5154 5155 5156 5157 5158 5159 5160 5161 5162 5163 5164 5165 5166 5167 5168 5169 5170 5171 5172 5173 5174 5175 5176 5177 5178 5179 5180 5181 5182 5183 5184 5185 5186 5187 5188 5189 5190 5191 5192 5193 5194 5195 5196 5197 5198 5199 5200 5201 5202 5203 5204 5205 5206 5207 5208 5209 5210 5211 5212 5213 5214 5215 5216 5217 5218 5219 5220 5221 5222 5223 5224 5225 5226 5227 5228 5229 5230 5231 5232 5233 5234 5235 5236 5237 5238 5239 5240 5241 5242 5243 5244 5245 5246 5247 5248 5249 5250 5251 5252 5253 5254 5255 5256 5257 5258 5259 5260 5261 5262 5263 5264 5265 5266 5267 5268 5269 5270 5271 5272 5273 5274 5275 5276 5277 5278 5279 5280 5281 5282 5283 5284 5285 5286 5287 5288 5289 5290 5291 5292 5293 5294 5295 5296 5297 5298 5299 5300 5301 5302 5303 5304 5305 5306 5307 5308 5309 5310 5311 5312 5313 5314 5315 5316 5317 5318 5319 5320 5321 5322 5323 5324 5325 5326 5327 5328 5329 5330 5331 5332 5333 5334 5335 5336 5337 5338 5339 5340 5341 5342 5343 5344 5345 5346 5347 5348 5349 5350 5351 5352 5353 5354 5355 5356 5357 5358 5359 5360 5361 5362 5363 5364 5365 5366 5367 5368 5369 5370 5371 5372 5373 5374 5375 5376 5377 5378 5379 5380 5381 5382 5383 5384 5385 5386 5387 5388 5389 5390 5391 5392 5393 5394 5395 5396 5397 5398 5399 5400 5401 5402 5403 5404 5405 5406 5407 5408 5409 5410 5411 5412 5413 5414 5415 5416 5417 5418 5419 5420 5421 5422 5423 5424 5425 5426 5427 5428 5429 5430 5431 5432 5433 5434 5435 5436 5437 5438 5439 5440 5441 5442 5443 5444 5445 5446 5447 5448 5449 5450 5451 5452 5453 5454 5455 5456 5457 5458 5459 5460 5461 5462 5463 5464 5465 5466 5467 5468 5469 5470 5471 5472 5473 5474 5475 5476 5477 5478 5479 5480 5481 5482 5483 5484 5485 5486 5487 5488 5489 5490 5491 5492 5493 5494 5495 5496 5497 5498 5499 5500 5501 5502 5503 5504 5505 5506 5507 5508 5509 5510 5511 5512 5513 5514 5515 5516 5517 5518 5519 5520 5521 5522 5523 5524 5525 5526 5527 5528 5529 5530 5531 5532 5533 5534 5535 5536 5537 5538 5539 5540 5541 5542 5543 5544 5545 5546 5547 5548 5549 5550 5551 5552 5553 5554 5555 5556 5557 5558 5559 5560 5561 5562 5563 5564 5565 5566 5567 5568 5569 5570 5571 5572 5573 5574 5575 5576 5577 5578 5579 5580 5581 5582 5583 5584 5585 5586 5587 5588 5589 5590 5591 5592 5593 5594 5595 5596 5597 5598 5599 5600 5601 5602 5603 5604 5605 5606 5607 5608 5609 5610 5611 5612 5613 5614 5615 5616 5617 5618 5619 5620 5621 5622 5623 5624 5625 5626 5627 5628 5629 5630 5631 5632 5633 5634 5635 5636 5637 5638 5639 5640 5641 5642 5643 5644 5645 5646 5647 5648 5649 5650 5651 5652 5653 5654 5655 5656 5657 5658 5659 5660 5661 5662 5663 5664 5665 5666 5667 5668 5669 5670 5671 5672 5673 5674 5675 5676 5677 5678 5679 5680 5681 5682 5683 5684 5685 5686 5687 5688 5689 5690 5691 5692 5693 5694 5695 5696 5697 5698 5699 5700 5701 5702 5703 5704 5705 5706 5707 5708 5709 5710 5711 5712 5713 5714 5715 5716 5717 5718 5719 5720 5721 5722 5723 5724 5725 5726 5727 5728 5729 5730 5731 5732 5733 5734 5735 5736 5737 5738 5739 5740 5741 5742 5743 5744 5745 5746 5747 5748 5749 5750 5751 5752 5753 5754 5755 5756 5757 5758 5759 5760 5761 5762 5763 5764 5765 5766 5767 5768 5769 5770 5771 5772 5773 5774 5775 5776 5777 5778 5779 5780 5781 5782 5783 5784 5785 5786 5787 5788 5789 5790 5791 5792 5793 5794 5795 5796 5797 5798 5799 5800 5801 5802 5803 5804 5805 5806 5807 5808 5809 5810 5811 5812 5813 5814 5815 5816 5817 5818 5819 5820 5821 5822 5823 5824 5825 5826 5827 5828 5829 5830 5831 5832 5833 5834 5835 5836 5837 5838 5839 5840 5841 5842 5843 5844 5845 5846 5847 5848 5849 5850 5851 5852 5853 5854 5855 5856 5857 5858 5859 5860 5861 5862 5863 5864 5865 5866 5867 5868 5869 5870 5871 5872 5873 5874 5875 5876 5877 5878 5879 5880 5881 5882 5883 5884 5885 5886 5887 5888 5889 5890 5891 5892 5893 5894 5895 5896 5897 5898 5899 5900 5901 5902 5903 5904 5905 5906 5907 5908 5909 5910 5911 5912 5913 5914 5915 5916 5917 5918 5919 5920 5921 5922 5923 5924 5925 5926 5927 5928 5929 5930 5931 5932 5933 5934 5935 5936 5937 5938 5939 5940 5941 5942 5943 5944 5945 5946 5947 5948 5949 5950 5951 5952 5953 5954 5955 5956 5957 5958 5959 5960 5961 5962 5963 5964 5965 5966 5967 5968 5969 5970 5971 5972 5973 5974 5975 5976 5977 5978 5979 5980 5981 5982 5983 5984 5985 5986 5987 5988 5989 5990 5991 5992 5993 5994 5995 5996 5997 5998 5999 6000 6001 6002 6003 6004 6005 6006 6007 6008 6009 6010 6011 6012 6013 6014 6015 6016 6017 6018 6019 6020 6021 6022 6023 6024 6025 6026 6027 6028 6029 6030 6031 6032 6033 6034 6035 6036 6037 6038 6039 6040 6041 6042 6043 6044 6045 6046 6047 6048 6049 6050 6051 6052 6053 6054 6055 6056 6057 6058 6059 6060 6061 6062 6063 6064 6065 6066 6067 6068 6069 6070 6071 6072 6073 6074 6075 6076 6077 6078 6079 6080 6081 6082 6083 6084 6085 6086 6087 6088 6089 6090 6091 6092 6093 6094 6095 6096 6097 6098 6099 6100 6101 6102 6103 6104 6105 6106 6107 6108 6109 6110 6111 6112 6113 6114 6115 6116 6117 6118 6119 6120 6121 6122 6123 6124 6125 6126 6127 6128 6129 6130 6131 6132 6133 6134 6135 6136 6137 6138 6139 6140 6141 6142 6143 6144 6145 6146 6147 6148 6149 6150 6151 6152 6153 6154 6155 6156 6157 6158 6159 6160 6161 6162 6163 6164 6165 6166 6167 6168 6169 6170 6171 6172 6173 6174 6175 6176 6177 6178 6179 6180 6181 6182 6183 6184 6185 6186 6187 6188 6189 6190 6191 6192 6193 6194 6195 6196 6197 6198 6199 6200 6201 6202 6203 6204 6205 6206 6207 6208 6209 6210 6211 6212 6213 6214 6215 6216 6217 6218 6219 6220 6221 6222 6223 6224 6225 6226 6227 6228 6229 6230 6231 6232 6233 6234 6235 6236 6237 6238 6239 6240 6241 6242 6243 6244 6245 6246 6247 6248 6249 6250 6251 6252 6253 6254 6255 6256 6257 6258 6259 6260 6261 6262 6263 6264 6265 6266 6267 6268 6269 6270 6271 6272 6273 6274 6275 6276 6277 6278 6279 6280 6281 6282 6283 6284 6285 6286 6287 6288 6289 6290 6291 6292 6293 6294 6295 6296 6297 6298 6299 6300 6301 6302 6303 6304 6305 6306 6307 6308 6309 6310 6311 6312 6313 6314 6315 6316 6317 6318 6319 6320 6321 6322 6323 6324 6325 6326 6327 6328 6329 6330 6331 6332 6333 6334 6335 6336 6337 6338 6339 6340 6341 6342 6343 6344 6345 6346 6347 6348 6349 6350 6351 6352 6353 6354 6355 6356 6357 6358 6359 6360 6361 6362 6363 6364 6365 6366 6367 6368 6369 6370 6371 6372 6373 6374 6375 6376 6377 6378 6379 6380 6381 6382 6383 6384 6385 6386 6387 6388 6389 6390 6391 6392 6393 6394 6395 6396 6397 6398 6399 6400 6401 6402 6403 6404 6405 6406 6407 6408 6409 6410 6411 6412 6413 6414 6415 6416 6417 6418 6419 6420 6421 6422 6423 6424 6425 6426 6427 6428 6429 6430 6431 6432 6433 6434 6435 6436 6437 6438 6439 6440 6441 6442 6443 6444 6445 6446 6447 6448 6449 6450 6451 6452 6453 6454 6455 6456 6457 6458 6459 6460 6461 6462 6463 6464 6465 6466 6467 6468 6469 6470 6471 6472 6473 6474 6475 6476 6477 6478 6479 6480 6481 6482 6483 6484 6485 6486 6487 6488 6489 6490 6491 6492 6493 6494 6495 6496 6497 6498 6499 6500 6501 6502 6503 6504 6505 6506 6507 6508 6509 6510 6511 6512 6513 6514 6515 6516 6517 6518 6519 6520 6521 6522 6523 6524 6525 6526 6527 6528 6529 6530 6531 6532 6533 6534 6535 6536 6537 6538 6539 6540 6541 6542 6543 6544 6545 6546 6547 6548 6549 6550 6551 6552 6553 6554 6555 6556 6557 6558 6559 6560 6561 6562 6563 6564 6565 6566 6567 6568 6569 6570 6571 6572 6573 6574 6575 6576 6577 6578 6579 6580 6581 6582 6583 6584 6585 6586 6587 6588 6589 6590 6591 6592 6593 6594 6595 6596 6597 6598 6599 6600 6601 6602 6603 6604 6605 6606 6607 6608 6609 6610 6611 6612 6613 6614 6615 6616 6617 6618 6619 6620 6621 6622 6623 6624 6625 6626 6627 6628 6629 6630 6631 6632 6633 6634 6635 6636 6637 6638 6639 6640 6641 6642 6643 6644 6645 6646 6647 6648 6649 6650 6651 6652 6653 6654 6655 6656 6657 6658 6659 6660 6661 6662 6663 6664 6665 6666 6667 6668 6669 6670 6671 6672 6673 6674 6675 6676 6677 6678 6679 6680 6681 6682 6683 6684 6685 6686 6687 6688 6689 6690 6691 6692 6693 6694 6695 6696 6697 6698 6699 6700 6701 6702 6703 6704 6705 6706 6707 6708 6709 6710 6711 6712 6713 6714 6715 6716 6717 6718 6719 6720 6721 6722 6723 6724 6725 6726 6727 6728 6729 6730 6731 6732 6733 6734 6735 6736 6737 6738 6739 6740 6741 6742 6743 6744 6745 6746 6747 6748 6749 6750 6751 6752 6753 6754 6755 6756 6757 6758 6759 6760 6761 6762 6763 6764 6765 6766 6767 6768 6769 6770 6771 6772 6773 6774 6775 6776 6777 6778 6779 6780 6781 6782 6783 6784 6785 6786 6787 6788 6789 6790 6791 6792 6793 6794 6795 6796 6797 6798 6799 6800 6801 6802 6803 6804 6805 6806 6807 6808 6809 6810 6811 6812 6813 6814 6815 6816 6817 6818 6819 6820 6821 6822 6823 6824 6825 6826 6827 6828 6829 6830 6831 6832 6833 6834 6835 6836 6837 6838 6839 6840 6841 6842 6843 6844 6845 6846 6847 6848 6849 6850 6851 6852 6853 6854 6855 6856 6857 6858 6859 6860 6861 6862 6863 6864 6865 6866 6867 6868 6869 6870 6871 6872 6873 6874 6875 6876 6877 6878 6879 6880 6881 6882 6883 6884 6885 6886 6887 6888 6889 6890 6891 6892 6893 6894 6895 6896 6897 6898 6899 6900 6901 6902 6903 6904 6905 6906 6907 6908 6909 6910 6911 6912 6913 6914 6915 6916 6917 6918 6919 6920 6921 6922 6923 6924 6925 6926 6927 6928 6929 6930 6931 6932 6933 6934 6935 6936 6937 6938 6939 6940 6941 6942 6943 6944 6945 6946 6947 6948 6949 6950 6951 6952 6953 6954 6955 6956 6957 6958 6959 6960 6961 6962 6963 6964 6965 6966 6967 6968 6969 6970 6971 6972 6973 6974 6975 6976 6977 6978 6979 6980 6981 6982 6983 6984 6985 6986 6987 6988 6989 6990 6991 6992 6993 6994 6995 6996 6997 6998 6999 7000 7001 7002 7003 7004 7005 7006 7007 7008 7009 7010 7011 7012 7013 7014 7015 7016 7017 7018 7019 7020 7021 7022 7023 7024 7025 7026 7027 7028 7029 7030 7031 7032 7033 7034 7035 7036 7037 7038 7039 7040 7041 7042 7043 7044 7045 7046 7047 7048 7049 7050 7051 7052 7053 7054 7055 7056 7057 7058 7059 7060 7061 7062 7063 7064 7065 7066 7067 7068 7069 7070 7071 7072 7073 7074 7075 7076 7077 7078 7079 7080 7081 7082 7083 7084 7085 7086 7087 7088 7089 7090 7091 7092 7093 7094 7095 7096 7097 7098 7099 7100 7101 7102 7103 7104 7105 7106 7107 7108 7109 7110 7111 7112 7113 7114 7115 7116 7117 7118 7119 7120 7121 7122 7123 7124 7125 7126 7127 7128 7129 7130 7131 7132 7133 7134 7135 7136 7137 7138 7139 7140 7141 7142 7143 7144 7145 7146 7147 7148 7149 7150 7151 7152 7153 7154 7155 7156 7157 7158 7159 7160 7161 7162 7163 7164 7165 7166 7167 7168 7169 7170 7171 7172 7173 7174 7175 7176 7177 7178 7179 7180 7181 7182 7183 7184 7185 7186 7187 7188 7189 7190 7191 7192 7193 7194 7195 7196 7197 7198 7199 7200 7201 7202 7203 7204 7205 7206 7207 7208 7209 7210 7211 7212 7213 7214 7215 7216 7217 7218 7219 7220 7221 7222 7223 7224 7225 7226 7227 7228 7229 7230 7231 7232 7233 7234 7235 7236 7237 7238 7239 7240 7241 7242 7243 7244 7245 7246 7247 7248 7249 7250 7251 7252 7253 7254 7255 7256 7257 7258 7259 7260 7261 7262 7263 7264 7265 7266 7267 7268 7269 7270 7271 7272 7273 7274 7275 7276 7277 7278 7279 7280 7281 7282 7283 7284 7285 7286 7287 7288 7289 7290 7291 7292 7293 7294 7295 7296 7297 7298 7299 7300 7301 7302 7303 7304 7305 7306 7307 7308 7309 7310 7311 7312 7313 7314 7315 7316 7317 7318 7319 7320 7321 7322 7323 7324 7325 7326 7327 7328 7329 7330 7331 7332 7333 7334 7335 7336 7337 7338 7339 7340 7341 7342 7343 7344 7345 7346 7347 7348 7349 7350 7351 7352 7353 7354 7355 7356 7357 7358 7359 7360 7361 7362 7363 7364 7365 7366 7367 7368 7369 7370 7371 7372 7373 7374 7375 7376 7377 7378 7379 7380 7381 7382 7383 7384 7385 7386 7387 7388 7389 7390 7391 7392 7393 7394 7395 7396 7397 7398 7399 7400 7401 7402 7403 7404 7405 7406 7407 7408 7409 7410 7411 7412 7413 7414 7415 7416 7417 7418 7419 7420 7421 7422 7423 7424 7425 7426 7427 7428 7429 7430 7431 7432 7433 7434 7435 7436 7437 7438 7439 7440 7441 7442 7443 7444 7445 7446 7447 7448 7449 7450 7451 7452 7453 7454 7455 7456 7457 7458 7459 7460 7461 7462 7463 7464 7465 7466 7467 7468 7469 7470 7471 7472 7473 7474 7475 7476 7477 7478 7479 7480 7481 7482 7483 7484 7485 7486 7487 7488 7489 7490 7491 7492 7493 7494 7495 7496 7497 7498 7499 7500 7501 7502 7503 7504 7505 7506 7507 7508 7509 7510 7511 7512 7513 7514 7515 7516 7517 7518 7519 7520 7521 7522 7523 7524 7525 7526 7527 7528 7529 7530 7531 7532 7533 7534 7535 7536 7537 7538 7539 7540 7541 7542 7543 7544 7545 7546 7547 7548 7549 7550 7551 7552 7553 7554 7555 7556 7557 7558 7559 7560 7561 7562 7563 7564 7565 7566 7567 7568 7569 7570 7571 7572 7573 7574 7575 7576 7577 7578 7579 7580 7581 7582 7583 7584 7585 7586 7587 7588 7589 7590 7591 7592 7593 7594 7595 7596 7597 7598 7599 7600 7601 7602 7603 7604 7605 7606 7607 7608 7609 7610 7611 7612 7613 7614 7615 7616 7617 7618 7619 7620 7621 7622 7623 7624 7625 7626 7627 7628 7629 7630 7631 7632 7633 7634 7635 7636 7637 7638 7639 7640 7641 7642 7643 7644 7645 7646 7647 7648 7649 7650 7651 7652 7653 7654 7655 7656 7657 7658 7659 7660 7661 7662 7663 7664 7665 7666 7667 7668 7669 7670 7671 7672 7673 7674 7675 7676 7677 7678 7679 7680 7681 7682 7683 7684 7685 7686 7687 7688 7689 7690 7691 7692 7693 7694 7695 7696 7697 7698 7699 7700 7701 7702 7703 7704 7705 7706 7707 7708 7709 7710 7711 7712 7713 7714 7715 7716 7717 7718 7719 7720 7721 7722 7723 7724 7725 7726 7727 7728 7729 7730 7731 7732 7733 7734 7735 7736 7737 7738 7739 7740 7741 7742 7743 7744 7745 7746 7747 7748 7749 7750 7751 7752 7753 7754 7755 7756 7757 7758 7759 7760 7761 7762 7763 7764 7765 7766 7767 7768 7769 7770 7771 7772 7773 7774 7775 7776 7777 7778 7779 7780 7781 7782 7783 7784 7785 7786 7787 7788 7789 7790 7791 7792 7793 7794 7795 7796 7797 7798 7799 7800 7801 7802 7803 7804 7805 7806 7807 7808 7809 7810 7811 7812 7813 7814 7815 7816 7817 7818 7819 7820 7821 7822 7823 7824 7825 7826 7827 7828 7829 7830 7831 7832 7833 7834 7835 7836 7837 7838 7839 7840 7841 7842 7843 7844 7845 7846 7847 7848 7849 7850 7851 7852 7853 7854 7855 7856 7857 7858 7859 7860 7861 7862 7863 7864 7865 7866 7867 7868 7869 7870 7871 7872 7873 7874 7875 7876 7877 7878 7879 7880 7881 7882 7883 7884 7885 7886 7887 7888 7889 7890 7891 7892 7893 7894 7895 7896 7897 7898 7899 7900 7901 7902 7903 7904 7905 7906 7907 7908 7909 7910 7911 7912 7913 7914 7915 7916 7917 7918 7919 7920 7921 7922 7923 7924 7925 7926 7927 7928 7929 7930 7931 7932 7933 7934 7935 7936 7937 7938 7939 7940 7941 7942 7943 7944 7945 7946 7947 7948 7949 7950 7951 7952 7953 7954 7955 7956 7957 7958 7959 7960 7961 7962 7963 7964 7965 7966 7967 7968 7969 7970 7971 7972 7973 7974 7975 7976 7977 7978 7979 7980 7981 7982 7983 7984 7985 7986 7987 7988 7989 7990 7991 7992 7993 7994 7995 7996 7997 7998 7999 8000 8001 8002 8003 8004 8005 8006 8007 8008 8009 8010 8011 8012 8013 8014 8015 8016 8017 8018 8019 8020 8021 8022 8023 8024 8025 8026 8027 8028 8029 8030 8031 8032 8033 8034 8035 8036 8037 8038 8039 8040 8041 8042 8043 8044 8045 8046 8047 8048 8049 8050 8051 8052 8053 8054 8055 8056 8057 8058 8059 8060 8061 8062 8063 8064 8065 8066 8067 8068 8069 8070 8071 8072 8073 8074 8075 8076 8077 8078 8079 8080 8081 8082 8083 8084 8085 8086 8087 8088 8089 8090 8091 8092 8093 8094 8095 8096 8097 8098 8099 8100 8101 8102 8103 8104 8105 8106 8107 8108 8109 8110 8111 8112 8113 8114 8115 8116 8117 8118 8119 8120 8121 8122 8123 8124 8125 8126 8127 8128 8129 8130 8131 8132 8133 8134 8135 8136 8137 8138 8139 8140 8141 8142 8143 8144 8145 8146 8147 8148 8149 8150 8151 8152 8153 8154 8155 8156 8157 8158 8159 8160 8161 8162 8163 8164 8165 8166 8167 8168 8169 8170 8171 8172 8173 8174 8175 8176 8177 8178 8179 8180 8181 8182 8183 8184 8185 8186 8187 8188 8189 8190 8191 8192 8193 8194 8195 8196 8197 8198 8199 8200 8201 8202 8203 8204 8205 8206 8207 8208 8209 8210 8211 8212 8213 8214 8215 8216 8217 8218 8219 8220 8221 8222 8223 8224 8225 8226 8227 8228 8229 8230 8231 8232 8233 8234 8235 8236 8237 8238 8239 8240 8241 8242 8243 8244 8245 8246 8247 8248 8249 8250 8251 8252 8253 8254 8255 8256 8257 8258 8259 8260 8261 8262 8263 8264 8265 8266 8267 8268 8269 8270 8271 8272 8273 8274 8275 8276 8277 8278 8279 8280 8281 8282 8283 8284 8285 8286 8287 8288 8289 8290 8291 8292 8293 8294 8295 8296 8297 8298 8299 8300 8301 8302 8303 8304 8305 8306 8307 8308 8309 8310 8311 8312 8313 8314 8315 8316 8317 8318 8319 8320 8321 8322 8323 8324 8325 8326 8327 8328 8329 8330 8331 8332 8333 8334 8335 8336 8337 8338 8339 8340 8341 8342 8343 8344 8345 8346 8347 8348 8349 8350 8351 8352 8353 8354 8355 8356 8357 8358 8359 8360 8361 8362 8363 8364 8365 8366 8367 8368 8369 8370 8371 8372 8373 8374 8375 8376 8377 8378 8379 8380 8381 8382 8383 8384 8385 8386 8387 8388 8389 8390 8391 8392 8393 8394 8395 8396 8397 8398 8399 8400 8401 8402 8403 8404 8405 8406 8407 8408 8409 8410 8411 8412 8413 8414 8415 8416 8417 8418 8419 8420 8421 8422 8423 8424 8425 8426 8427 8428 8429 8430 8431 8432 8433 8434 8435 8436 8437 8438 8439 8440 8441 8442 8443 8444 8445 8446 8447 8448 8449 8450 8451 8452 8453 8454 8455 8456 8457 8458 8459 8460 8461 8462 8463 8464 8465 8466 8467 8468 8469 8470 8471 8472 8473 8474 8475 8476 8477 8478 8479 8480 8481 8482 8483 8484 8485 8486 8487 8488 8489 8490 8491 8492 8493 8494 8495 8496 8497 8498 8499 8500 8501 8502 8503 8504 8505 8506 8507 8508 8509 8510 8511 8512 8513 8514 8515 8516 8517 8518 8519 8520 8521 8522 8523 8524 8525 8526 8527 8528 8529 8530 8531 8532 8533 8534 8535 8536 8537 8538 8539 8540 8541 8542 8543 8544 8545 8546 8547 8548 8549 8550 8551 8552 8553 8554 8555 8556 8557 8558 8559 8560 8561 8562 8563 8564 8565 8566 8567 8568 8569 8570 8571 8572 8573 8574 8575 8576 8577 8578 8579 8580 8581 8582 8583 8584 8585 8586 8587 8588 8589 8590 8591 8592 8593 8594 8595 8596 8597 8598 8599 8600 8601 8602 8603 8604 8605 8606 8607 8608 8609 8610 8611 8612 8613 8614 8615 8616 8617 8618 8619 8620 8621 8622 8623 8624 8625 8626 8627 8628 8629 8630 8631 8632 8633 8634 8635 8636 8637 8638 8639 8640 8641 8642 8643 8644 8645 8646 8647 8648 8649 8650 8651 8652 8653 8654 8655 8656 8657 8658 8659 8660 8661 8662 8663 8664 8665 8666 8667 8668 8669 8670 8671 8672 8673 8674 8675 8676 8677 8678 8679 8680 8681 8682 8683 8684 8685 8686 8687 8688 8689 8690 8691 8692 8693 8694 8695 8696 8697 8698 8699 8700 8701 8702 8703 8704 8705 8706 8707 8708 8709 8710 8711 8712 8713 8714 8715 8716 8717 8718 8719 8720 8721 8722 8723 8724 8725 8726 8727 8728 8729 8730 8731 8732 8733 8734 8735 8736 8737 8738 8739 8740 8741 8742 8743 8744 8745 8746 8747 8748 8749 8750 8751 8752 8753 8754 8755 8756 8757 8758 8759 8760 8761 8762 8763 8764 8765 8766 8767 8768 8769 8770 8771 8772 8773 8774 8775 8776 8777 8778 8779 8780 8781 8782 8783 8784 8785 8786 8787 8788 8789 8790 8791 8792 8793 8794 8795 8796 8797 8798 8799 8800 8801 8802 8803 8804 8805 8806 8807 8808 8809 8810 8811 8812 8813 8814 8815 8816 8817 8818 8819 8820 8821 8822 8823 8824 8825 8826 8827 8828 8829 8830 8831 8832 8833 8834 8835 8836 8837 8838 8839 8840 8841 8842 8843 8844 8845 8846 8847 8848 8849 8850 8851 8852 8853 8854 8855 8856 8857 8858 8859 8860 8861 8862 8863 8864 8865 8866 8867 8868 8869 8870 8871 8872 8873 8874 8875 8876 8877 8878 8879 8880 8881 8882 8883 8884 8885 8886 8887 8888 8889 8890 8891 8892 8893 8894 8895 8896 8897 8898 8899 8900 8901 8902 8903 8904 8905 8906 8907 8908 8909 8910 8911 8912 8913 8914 8915 8916 8917 8918 8919 8920 8921 8922 8923 8924 8925 8926 8927 8928 8929 8930 8931 8932 8933 8934 8935 8936 8937 8938 8939 8940 8941 8942 8943 8944 8945 8946 8947 8948 8949 8950 8951 8952 8953 8954 8955 8956 8957 8958 8959 8960 8961 8962 8963 8964 8965 8966 8967 8968 8969 8970 8971 8972 8973 8974 8975 8976 8977 8978 8979 8980 8981 8982 8983 8984 8985 8986 8987 8988 8989 8990 8991 8992 8993 8994 8995 8996 8997 8998 8999 9000 9001 9002 9003 9004 9005 9006 9007 9008 9009 9010 9011 9012 9013 9014 9015 9016 9017 9018 9019 9020 9021 9022 9023 9024 9025 9026 9027 9028 9029 9030 9031 9032 9033 9034 9035 9036 9037 9038 9039 9040 9041 9042 9043 9044 9045 9046 9047 9048 9049 9050 9051 9052 9053 9054 9055 9056 9057 9058 9059 9060 9061 9062 9063 9064 9065 9066 9067 9068 9069 9070 9071 9072 9073 9074 9075 9076 9077 9078 9079 9080 9081 9082 9083 9084 9085 9086 9087 9088 9089 9090 9091 9092 9093 9094 9095 9096 9097 9098 9099 9100 9101 9102 9103 9104 9105 9106 9107 9108 9109 9110 9111 9112 9113 9114 9115 9116 9117 9118 9119 9120 9121 9122 9123 9124 9125 9126 9127 9128 9129 9130 9131 9132 9133 9134 9135 9136 9137 9138 9139 9140 9141 9142 9143 9144 9145 9146 9147 9148 9149 9150 9151 9152 9153 9154 9155 9156 9157 9158 9159 9160 9161 9162 9163 9164 9165 9166 9167 9168 9169 9170 9171 9172 9173 9174 9175 9176 9177 9178 9179 9180 9181 9182 9183 9184 9185 9186 9187 9188 9189 9190 9191 9192 9193 9194 9195 9196 9197 9198 9199 9200 9201 9202 9203 9204 9205 9206 9207 9208 9209 9210 9211 9212 9213 9214 9215 9216 9217 9218 9219 9220 9221 9222 9223 9224 9225 9226 9227 9228 9229 9230 9231 9232 9233 9234 9235 9236 9237 9238 9239 9240 9241 9242 9243 9244 9245 9246 9247 9248 9249 9250 9251 9252 9253 9254 9255 9256 9257 9258 9259 9260 9261 9262 9263 9264 9265 9266 9267 9268 9269 9270 9271 9272 9273 9274 9275 9276 9277 9278 9279 9280 9281 9282 9283 9284 9285 9286 9287 9288 9289 9290 9291 9292 9293 9294 9295 9296 9297 9298 9299 9300 9301 9302 9303 9304 9305 9306 9307 9308 9309 9310 9311 9312 9313 9314 9315 9316 9317 9318 9319 9320 9321 9322 9323 9324 9325 9326 9327 9328 9329 9330 9331 9332 9333 9334 9335 9336 9337 9338 9339 9340 9341 9342 9343 9344 9345 9346 9347 9348 9349 9350 9351 9352 9353 9354 9355 9356 9357 9358 9359 9360 9361 9362 9363 9364 9365 9366 9367 9368 9369 9370 9371 9372 9373 9374 9375 9376 9377 9378 9379 9380 9381 9382 9383 9384 9385 9386 9387 9388 9389 9390 9391 9392 9393 9394 9395 9396 9397 9398 9399 9400 9401 9402 9403 9404 9405 9406 9407 9408 9409 9410 9411 9412 9413 9414 9415 9416 9417 9418 9419 9420 9421 9422 9423 9424 9425 9426 9427 9428 9429 9430 9431 9432 9433 9434 9435 9436 9437 9438 9439 9440 9441 9442 9443 9444 9445 9446 9447 9448 9449 9450 9451 9452 9453 9454 9455 9456 9457 9458 9459 9460 9461 9462 9463 9464 9465 9466 9467 9468 9469 9470 9471 9472 9473 9474 9475 9476 9477 9478 9479 9480 9481 9482 9483 9484 9485 9486 9487 9488 9489 9490 9491 9492 9493 9494 9495 9496 9497 9498 9499 9500 9501 9502 9503 9504 9505 9506 9507 9508 9509 9510 9511 9512 9513 9514 9515 9516 9517 9518 9519 9520 9521 9522 9523 9524 9525 9526 9527 9528 9529 9530 9531 9532 9533 9534 9535 9536 9537 9538 9539 9540 9541 9542 9543 9544 9545 9546 9547 9548 9549 9550 9551 9552 9553 9554 9555 9556 9557 9558 9559 9560 9561 9562 9563 9564 9565 9566 9567 9568 9569 9570 9571 9572 9573 9574 9575 9576 9577 9578 9579 9580 9581 9582 9583 9584 9585 9586 9587 9588 9589 9590 9591 9592 9593 9594 9595 9596 9597 9598 9599 9600 9601 9602 9603 9604 9605 9606 9607 9608 9609 9610 9611 9612 9613 9614 9615 9616 9617 9618 9619 9620 9621 9622 9623 9624 9625 9626 9627 9628 9629 9630 9631 9632 9633 9634 9635 9636 9637 9638 9639 9640 9641 9642 9643 9644 9645 9646 9647 9648 9649 9650 9651 9652 9653 9654 9655 9656 9657 9658 9659 9660 9661 9662 9663 9664 9665 9666 9667 9668 9669 9670 9671 9672 9673 9674 9675 9676 9677 9678 9679 9680 9681 9682 9683 9684 9685 9686 9687 9688 9689 9690 9691 9692 9693 9694 9695 9696 9697 9698 9699 9700 9701 9702 9703 9704 9705 9706 9707 9708 9709 9710 9711 9712 9713 9714 9715 9716 9717 9718 9719 9720 9721 9722 9723 9724 9725 9726 9727 9728 9729 9730 9731 9732 9733 9734 9735 9736 9737 9738 9739 9740 9741 9742 9743 9744 9745 9746 9747 9748 9749 9750 9751 9752 9753 9754 9755 9756 9757 9758 9759 9760 9761 9762 9763 9764 9765 9766 9767 9768 9769 9770 9771 9772 9773 9774 9775 9776 9777 9778 9779 9780 9781 9782 9783 9784 9785 9786 9787 9788 9789 9790 9791 9792 9793 9794 9795 9796 9797 9798 9799 9800 9801 9802 9803 9804 9805 9806 9807 9808 9809 9810 9811 9812 9813 9814 9815 9816 9817 9818 9819 9820 9821 9822 9823 9824 9825 9826 9827 9828 9829 9830 9831 9832 9833 9834 9835 9836 9837 9838 9839 9840 9841 9842 9843 9844 9845 9846 9847 9848 9849 9850 9851 9852 9853 9854 9855 9856 9857 9858 9859 9860 9861 9862 9863 9864 9865 9866 9867 9868 9869 9870 9871 9872 9873 9874 9875 9876 9877 9878 9879 9880 9881 9882 9883 9884 9885 9886 9887 9888 9889 9890 9891 9892 9893 9894 9895 9896 9897 9898 9899 9900 9901 9902 9903 9904 9905 9906 9907 9908 9909 9910 9911 9912 9913 9914 9915 9916 9917 9918 9919 9920 9921 9922 9923 9924 9925 9926 9927 9928 9929 9930 9931 9932 9933 9934 9935 9936 9937 9938 9939 9940 9941 9942 9943 9944 9945 9946 9947 9948 9949 9950 9951 9952 9953 9954 9955 9956 9957 9958 9959 9960 9961 9962 9963 9964 9965 9966 9967 9968 9969 9970 9971 9972 9973 9974 9975 9976 9977 9978 9979 9980 9981 9982 9983 9984 9985 9986 9987 9988 9989 9990 9991 9992 9993 9994 9995 9996 9997 9998 9999 10000 10001 10002 10003 10004 10005 10006 10007 10008 10009 10010 10011 10012 10013 10014 10015 10016 10017 10018 10019 10020 10021 10022 10023 10024 10025 10026 10027 10028 10029 10030 10031 10032 10033 10034 10035 10036 10037 10038 10039 10040 10041 10042 10043 10044 10045 10046 10047 10048 10049 10050 10051 10052 10053 10054 10055 10056 10057 10058 10059 10060 10061 10062 10063 10064 10065 10066 10067 10068 10069 10070 10071 10072 10073 10074 10075 10076 10077 10078 10079 10080 10081 10082 10083 10084 10085 10086 10087 10088 10089 10090 10091 10092 10093 10094 10095 10096 10097 10098 10099 10100 10101 10102 10103 10104 10105 10106 10107 10108 10109 10110 10111 10112 10113 10114 10115 10116 10117 10118 10119 10120 10121 10122 10123 10124 10125 10126 10127 10128 10129 10130 10131 10132 10133 10134 10135 10136 10137 10138 10139 10140 10141 10142 10143 10144 10145 10146 10147 10148 10149 10150 10151 10152 10153 10154 10155 10156 10157 10158 10159 10160 10161 10162 10163 10164 10165 10166 10167 10168 10169 10170 10171 10172 10173 10174 10175 10176 10177 10178 10179 10180 10181 10182 10183 10184 10185 10186 10187 10188 10189 10190 10191 10192 10193 10194 10195 10196 10197 10198 10199 10200 10201 10202 10203 10204 10205 10206 10207 10208 10209 10210 10211 10212 10213 10214 10215 10216 10217 10218 10219 10220 10221 10222 10223 10224 10225 10226 10227 10228 10229 10230 10231 10232 10233 10234 10235 10236 10237 10238 10239 10240 10241 10242 10243 10244 10245 10246 10247 10248 10249 10250 10251 10252 10253 10254 10255 10256 10257 10258 10259 10260 10261 10262 10263 10264 10265 10266 10267 10268 10269 10270 10271 10272 10273 10274 10275 10276 10277 10278 10279 10280 10281 10282 10283 10284 10285 10286 10287 10288 10289 10290 10291 10292 10293 10294 10295 10296 10297 10298 10299 10300 10301 10302 10303 10304 10305 10306 10307 10308 10309 10310 10311 10312 10313 10314 10315 10316 10317 10318 10319 10320 10321 10322 10323 10324 10325 10326 10327 10328 10329 10330 10331 10332 10333 10334 10335 10336 10337 10338 10339 10340 10341 10342 10343 10344 10345 10346 10347 10348 10349 10350 10351 10352 10353 10354 10355 10356 10357 10358 10359 10360 10361 10362 10363 10364 10365 10366 10367 10368 10369 10370 10371 10372 10373 10374 10375 10376 10377 10378 10379 10380 10381 10382 10383 10384 10385 10386 10387 10388 10389 10390 10391 10392 10393 10394 10395 10396 10397 10398 10399 10400 10401 10402 10403 10404 10405 10406 10407 10408 10409 10410 10411 10412 10413 10414 10415 10416 10417 10418 10419 10420 10421 10422 10423 10424 10425 10426 10427 10428 10429 10430 10431 10432 10433 10434 10435 10436 10437 10438 10439 10440 10441 10442 10443 10444 10445 10446 10447 10448 10449 10450 10451 10452 10453 10454 10455 10456 10457 10458 10459 10460 10461 10462 10463 10464 10465 10466 10467 10468 10469 10470 10471 10472 10473 10474 10475 10476 10477 10478 10479 10480 10481 10482 10483 10484 10485 10486 10487 10488 10489 10490 10491 10492 10493 10494 10495 10496 10497 10498 10499 10500 10501 10502 10503 10504 10505 10506 10507 10508 10509 10510 10511 10512 10513 10514 10515 10516 10517 10518 10519 10520 10521 10522 10523 10524 10525 10526 10527 10528 10529 10530 10531 10532 10533 10534 10535 10536 10537 10538 10539 10540 10541 10542 10543 10544 10545 10546 10547 10548 10549 10550 10551 10552 10553 10554 10555 10556 10557 10558 10559 10560 10561 10562 10563 10564 10565 10566 10567 10568 10569 10570 10571 10572 10573 10574 10575 10576 10577 10578 10579 10580 10581 10582 10583 10584 10585 10586 10587 10588 10589 10590 10591 10592 10593 10594 10595 10596 10597 10598 10599 10600 10601 10602 10603 10604 10605 10606 10607 10608 10609 10610 10611 10612 10613 10614 10615 10616 10617 10618 10619 10620 10621 10622 10623 10624 10625 10626 10627 10628 10629 10630 10631 10632 10633 10634 10635 10636 10637 10638 10639 10640 10641 10642 10643 10644 10645 10646 10647 10648 10649 10650 10651 10652 10653 10654 10655 10656 10657 10658 10659 10660 10661 10662 10663 10664 10665 10666 10667 10668 10669 10670 10671 10672 10673 10674 10675 10676 10677 10678 10679 10680 10681 10682 10683 10684 10685 10686 10687 10688 10689 10690 10691 10692 10693 10694 10695 10696 10697 10698 10699 10700 10701 10702 10703 10704 10705 10706 10707 10708 10709 10710 10711 10712 10713 10714 10715 10716 10717 10718 10719 10720 10721 10722 10723 10724 10725 10726 10727 10728 10729 10730 10731 10732 10733 10734 10735 10736 10737 10738 10739 10740 10741 10742 10743 10744 10745 10746 10747 10748 10749 10750 10751 10752 10753 10754 10755 10756 10757 10758 10759 10760 10761 10762 10763 10764 10765 10766 10767 10768 10769 10770 10771 10772 10773 10774 10775 10776 10777 10778 10779 10780 10781 10782 10783 10784 10785 10786 10787 10788 10789 10790 10791 10792 10793 10794 10795 10796 10797 10798 10799 10800 10801 10802 10803 10804 10805 10806 10807 10808 10809 10810 10811 10812 10813 10814 10815 10816 10817 10818 10819 10820 10821 10822 10823 10824 10825 10826 10827 10828 10829 10830 10831 10832 10833 10834 10835 10836 10837 10838 10839 10840 10841 10842 10843 10844 10845 10846 10847 10848 10849 10850 10851 10852 10853 10854 10855 10856 10857 10858 10859 10860 10861 10862 10863 10864 10865 10866 10867 10868 10869 10870 10871 10872 10873 10874 10875 10876 10877 10878 10879 10880 10881 10882 10883 10884 10885 10886 10887 10888 10889 10890 10891 10892 10893 10894 10895 10896 10897 10898 10899 10900 10901 10902 10903 10904 10905 10906 10907 10908 10909 10910 10911 10912 10913 10914 10915 10916 10917 10918 10919 10920 10921 10922 10923 10924 10925 10926 10927 10928 10929 10930 10931 10932 10933 10934 10935 10936 10937 10938 10939 10940 10941 10942 10943 10944 10945 10946 10947 10948 10949 10950 10951 10952 10953 10954 10955 10956 10957 10958 10959 10960 10961 10962 10963 10964 10965 10966 10967 10968 10969 10970 10971 10972 10973 10974 10975 10976 10977 10978 10979 10980 10981 10982 10983 10984 10985 10986 10987 10988 10989 10990 10991 10992 10993 10994 10995 10996 10997 10998 10999 11000 11001 11002 11003 11004 11005 11006 11007 11008 11009 11010 11011 11012 11013 11014 11015 11016 11017 11018 11019 11020 11021 11022 11023 11024 11025 11026 11027 11028 11029 11030 11031 11032 11033 11034 11035 11036 11037 11038 11039 11040 11041 11042 11043 11044 11045 11046 11047 11048 11049 11050 11051 11052 11053 11054 11055 11056 11057 11058 11059 11060 11061 11062 11063 11064 11065 11066 11067 11068 11069 11070 11071 11072 11073 11074 11075 11076 11077 11078 11079 11080 11081 11082 11083 11084 11085 11086 11087 11088 11089 11090 11091 11092 11093 11094 11095 11096 11097 11098 11099 11100 11101 11102 11103 11104 11105 11106 11107 11108 11109 11110 11111 11112 11113 11114 11115 11116 11117 11118 11119 11120 11121 11122 11123 11124 11125 11126 11127 11128 11129 11130 11131 11132 11133 11134 11135 11136 11137 11138 11139 11140 11141 11142 11143 11144 11145 11146 11147 11148 11149 11150 11151 11152 11153 11154 11155 11156 11157 11158 11159 11160 11161 11162 11163 11164 11165 11166 11167 11168 11169 11170 11171 11172 11173 11174 11175 11176 11177 11178 11179 11180 11181 11182 11183 11184 11185 11186 11187 11188 11189 11190 11191 11192 11193 11194 11195 11196 11197 11198 11199 11200 11201 11202 11203 11204 11205 11206 11207 11208 11209 11210 11211 11212 11213 11214 11215 11216 11217 11218 11219 11220 11221 11222 11223 11224 11225 11226 11227 11228 11229 11230 11231 11232 11233 11234 11235 11236 11237 11238 11239 11240 11241 11242 11243 11244 11245 11246 11247 11248 11249 11250 11251 11252 11253 11254 11255 11256 11257 11258 11259 11260 11261 11262 11263 11264 11265 11266 11267 11268 11269 11270 11271 11272 11273 11274 11275 11276 11277 11278 11279 11280 11281 11282 11283 11284 11285 11286 11287 11288 11289 11290 11291 11292 11293 11294 11295 11296 11297 11298 11299 11300 11301 11302 11303 11304 11305 11306 11307 11308 11309 11310 11311 11312 11313 11314 11315 11316 11317 11318 11319 11320 11321 11322 11323 11324 11325 11326 11327 11328 11329 11330 11331 11332 11333 11334 11335 11336 11337 11338 11339 11340 11341 11342 11343 11344 11345 11346 11347 11348 11349 11350 11351 11352 11353 11354 11355 11356 11357 11358 11359 11360 11361 11362 11363 11364 11365 11366 11367 11368 11369 11370 11371 11372 11373 11374 11375 11376 11377 11378 11379 11380 11381 11382 11383 11384 11385 11386 11387 11388 11389 11390 11391 11392 11393 11394 11395 11396 11397 11398 11399 11400 11401 11402 11403 11404 11405 11406 11407 11408 11409 11410 11411 11412 11413 11414 11415 11416 11417 11418 11419 11420 11421 11422 11423 11424 11425 11426 11427 11428 11429 11430 11431 11432 11433 11434 11435 11436 11437 11438 11439 11440 11441 11442 11443 11444 11445 11446 11447 11448 11449 11450 11451 11452 11453 11454 11455 11456 11457 11458 11459 11460 11461 11462 11463 11464 11465 11466 11467 11468 11469 11470 11471 11472 11473 11474 11475 11476 11477 11478 11479 11480 11481 11482 11483 11484 11485 11486 11487 11488 11489 11490 11491 11492 11493 11494 11495 11496 11497 11498 11499 11500 11501 11502 11503 11504 11505 11506 11507 11508 11509 11510 11511 11512 11513 11514 11515 11516 11517 11518 11519 11520 11521 11522 11523 11524 11525 11526 11527 11528 11529 11530 11531 11532 11533 11534 11535 11536 11537 11538 11539 11540 11541 11542 11543 11544 11545 11546 11547 11548 11549 11550 11551 11552 11553 11554 11555 11556 11557 11558 11559 11560 11561 11562 11563 11564 11565 11566 11567 11568 11569 11570 11571 11572 11573 11574 11575 11576 11577 11578 11579 11580 11581 11582 11583 11584 11585 11586 11587 11588 11589 11590 11591 11592 11593 11594 11595 11596 11597 11598 11599 11600 11601 11602 11603 11604 11605 11606 11607 11608 11609 11610 11611 11612 11613 11614 11615 11616 11617 11618 11619 11620 11621 11622 11623 11624 11625 11626 11627 11628 11629 11630 11631 11632 11633 11634 11635 11636 11637 11638 11639 11640 11641 11642 11643 11644 11645 11646 11647 11648 11649 11650 11651 11652 11653 11654 11655 11656 11657 11658 11659 11660 11661 11662 11663 11664 11665 11666 11667 11668 11669 11670 11671 11672 11673 11674 11675 11676 11677 11678 11679 11680 11681 11682 11683 11684 11685 11686 11687 11688 11689 11690 11691 11692 11693 11694 11695 11696 11697 11698 11699 11700 11701 11702 11703 11704 11705 11706 11707 11708 11709 11710 11711 11712 11713 11714 11715 11716 11717 11718 11719 11720 11721 11722 11723 11724 11725 11726 11727 11728 11729 11730 11731 11732 11733 11734 11735 11736 11737 11738 11739 11740 11741 11742 11743 11744 11745 11746 11747 11748 11749 11750 11751 11752 11753 11754 11755 11756 11757 11758 11759 11760 11761 11762 11763 11764 11765 11766 11767 11768 11769 11770 11771 11772 11773 11774 11775 11776 11777 11778 11779 11780 11781 11782 11783 11784 11785 11786 11787 11788 11789 11790 11791 11792 11793 11794 11795 11796 11797 11798 11799 11800 11801 11802 11803 11804 11805 11806 11807 11808 11809 11810 11811 11812 11813 11814 11815 11816 11817 11818 11819 11820 11821 11822 11823 11824 11825 11826 11827 11828 11829 11830 11831 11832 11833 11834 11835 11836 11837 11838 11839 11840 11841 11842 11843 11844 11845 11846 11847 11848 11849 11850 11851 11852 11853 11854 11855 11856 11857 11858 11859 11860 11861 11862 11863 11864 11865 11866 11867 11868 11869 11870 11871 11872 11873 11874 11875 11876 11877 11878 11879 11880 11881 11882 11883 11884 11885 11886 11887 11888 11889 11890 11891 11892 11893 11894 11895 11896 11897 11898 11899 11900 11901 11902 11903 11904 11905 11906 11907 11908 11909 11910 11911 11912 11913 11914 11915 11916 11917 11918 11919 11920 11921 11922 11923 11924 11925 11926 11927 11928 11929 11930 11931 11932 11933 11934 11935 11936 11937 11938 11939 11940 11941 11942 11943 11944 11945 11946 11947 11948 11949 11950 11951 11952 11953 11954 11955 11956 11957 11958 11959 11960 11961 11962 11963 11964 11965 11966 11967 11968 11969 11970 11971 11972 11973 11974 11975 11976 11977 11978 11979 11980 11981 11982 11983 11984 11985 11986 11987 11988 11989 11990 11991 11992 11993 11994 11995 11996 11997 11998 11999 12000 12001 12002 12003 12004 12005 12006 12007 12008 12009 12010 12011 12012 12013 12014 12015 12016 12017 12018 12019 12020 12021 12022 12023 12024 12025 12026 12027 12028 12029 12030 12031 12032 12033 12034 12035 12036 12037 12038 12039 12040 12041 12042 12043 12044 12045 12046 12047 12048 12049 12050 12051 12052 12053 12054 12055 12056 12057 12058 12059 12060 12061 12062 12063 12064 12065 12066 12067 12068 12069 12070 12071 12072 12073 12074 12075 12076 12077 12078 12079 12080 12081 12082 12083 12084 12085 12086 12087 12088 12089 12090 12091 12092 12093 12094 12095 12096 12097 12098 12099 12100 12101 12102 12103 12104 12105 12106 12107 12108 12109 12110 12111 12112 12113 12114 12115 12116 12117 12118 12119 12120 12121 12122 12123 12124 12125 12126 12127 12128 12129 12130 12131 12132 12133 12134 12135 12136 12137 12138 12139 12140 12141 12142 12143 12144 12145 12146 12147 12148 12149 12150 12151 12152 12153 12154 12155 12156 12157 12158 12159 12160 12161 12162 12163 12164 12165 12166 12167 12168 12169 12170 12171 12172 12173 12174 12175 12176 12177 12178 12179 12180 12181 12182 12183 12184 12185 12186 12187 12188 12189 12190 12191 12192 12193 12194 12195 12196 12197 12198 12199 12200 12201 12202 12203 12204 12205 12206 12207 12208 12209 12210 12211 12212 12213 12214 12215 12216 12217 12218 12219 12220 12221 12222 12223 12224 12225 12226 12227 12228 12229 12230 12231 12232 12233 12234 12235 12236 12237 12238 12239 12240 12241 12242 12243 12244 12245 12246 12247 12248 12249 12250 12251 12252 12253 12254 12255 12256 12257 12258 12259 12260 12261 12262 12263 12264 12265 12266 12267 12268 12269 12270 12271 12272 12273 12274 12275 12276 12277 12278 12279 12280 12281 12282 12283 12284 12285 12286 12287 12288 12289 12290 12291 12292 12293 12294 12295 12296 12297 12298 12299 12300 12301 12302 12303 12304 12305 12306 12307 12308 12309 12310 12311 12312 12313 12314 12315 12316 12317 12318 12319 12320 12321 12322 12323 12324 12325 12326 12327 12328 12329 12330 12331 12332 12333 12334 12335 12336 12337 12338 12339 12340 12341 12342 12343 12344 12345 12346 12347 12348 12349 12350 12351 12352 12353 12354 12355 12356 12357 12358 12359 12360 12361 12362 12363 12364 12365 12366 12367 12368 12369 12370 12371 12372 12373 12374 12375 12376 12377 12378 12379 12380 12381 12382 12383 12384 12385 12386 12387 12388 12389 12390 12391 12392 12393 12394 12395 12396 12397 12398 12399 12400 12401 12402 12403 12404 12405 12406 12407 12408 12409 12410 12411 12412 12413 12414 12415 12416 12417 12418 12419 12420 12421 12422 12423 12424 12425 12426 12427 12428 12429 12430 12431 12432 12433 12434 12435 12436 12437 12438 12439 12440 12441 12442 12443 12444 12445 12446 12447 12448 12449 12450 12451 12452 12453 12454 12455 12456 12457 12458 12459 12460 12461 12462 12463 12464 12465 12466 12467 12468 12469 12470 12471 12472 12473 12474 12475 12476 12477 12478 12479 12480 12481 12482 12483 12484 12485 12486 12487 12488 12489 12490 12491 12492 12493 12494 12495 12496 12497 12498 12499 12500 12501 12502 12503 12504 12505 12506 12507 12508 12509 12510 12511 12512 12513 12514 12515 12516 12517 12518 12519 12520 12521 12522 12523 12524 12525 12526 12527 12528 12529 12530 12531 12532 12533 12534 12535 12536 12537 12538 12539 12540 12541 12542 12543 12544 12545 12546 12547 12548 12549 12550 12551 12552 12553 12554 12555 12556 12557 12558 12559 12560 12561 12562 12563 12564 12565 12566 12567 12568 12569 12570 12571 12572 12573 12574 12575 12576 12577 12578 12579 12580 12581 12582 12583 12584 12585 12586 12587 12588 12589 12590 12591 12592 12593 12594 12595 12596 12597 12598 12599 12600 12601 12602 12603 12604 12605 12606 12607 12608 12609 12610 12611 12612 12613 12614 12615 12616 12617 12618 12619 12620 12621 12622 12623 12624 12625 12626 12627 12628 12629 12630 12631 12632 12633 12634 12635 12636 12637 12638 12639 12640 12641 12642 12643 12644 12645 12646 12647 12648 12649 12650 12651 12652 12653 12654 12655 12656 12657 12658 12659 12660 12661 12662 12663 12664 12665 12666 12667 12668 12669 12670 12671 12672 12673 12674 12675 12676 12677 12678 12679 12680 12681 12682 12683 12684 12685 12686 12687 12688 12689 12690 12691 12692 12693 12694 12695 12696 12697 12698 12699 12700 12701 12702 12703 12704 12705 12706 12707 12708 12709 12710 12711 12712 12713 12714 12715 12716 12717 12718 12719 12720 12721 12722 12723 12724 12725 12726 12727 12728 12729 12730 12731 12732 12733 12734 12735 12736 12737 12738 12739 12740 12741 12742 12743 12744 12745 12746 12747 12748 12749 12750 12751 12752 12753 12754 12755 12756 12757 12758 12759 12760 12761 12762 12763 12764 12765 12766 12767 12768 12769 12770 12771 12772 12773 12774 12775 12776 12777 12778 12779 12780 12781 12782 12783 12784 12785 12786 12787 12788 12789 12790 12791 12792 12793 12794 12795 12796 12797 12798 12799 12800 12801 12802 12803 12804 12805 12806 12807 12808 12809 12810 12811 12812 12813 12814 12815 12816 12817 12818 12819 12820 12821 12822 12823 12824 12825 12826 12827 12828 12829 12830 12831 12832 12833 12834 12835 12836 12837 12838 12839 12840 12841 12842 12843 12844 12845 12846 12847 12848 12849 12850 12851 12852 12853 12854 12855 12856 12857 12858 12859 12860 12861 12862 12863 12864 12865 12866 12867 12868 12869 12870 12871 12872 12873 12874 12875 12876 12877 12878 12879 12880 12881 12882 12883 12884 12885 12886 12887 12888 12889 12890 12891 12892 12893 12894 12895 12896 12897 12898 12899 12900 12901 12902 12903 12904 12905 12906 12907 12908 12909 12910 12911 12912 12913 12914 12915 12916 12917 12918 12919 12920 12921 12922 12923 12924 12925 12926 12927 12928 12929 12930 12931 12932 12933 12934 12935 12936 12937 12938 12939 12940 12941 12942 12943 12944 12945 12946 12947 12948 12949 12950 12951 12952 12953 12954 12955 12956 12957 12958 12959 12960 12961 12962 12963 12964 12965 12966 12967 12968 12969 12970 12971 12972 12973 12974 12975 12976 12977 12978 12979 12980 12981 12982 12983 12984 12985 12986 12987 12988 12989 12990 12991 12992 12993 12994 12995 12996 12997 12998 12999 13000 13001 13002 13003 13004 13005 13006 13007 13008 13009 13010 13011 13012 13013 13014 13015 13016 13017 13018 13019 13020 13021 13022 13023 13024 13025 13026 13027 13028 13029 13030 13031 13032 13033 13034 13035 13036 13037 13038 13039 13040 13041 13042 13043 13044 13045 13046 13047 13048 13049 13050 13051 13052 13053 13054 13055 13056 13057 13058 13059 13060 13061 13062 13063 13064 13065 13066 13067 13068 13069 13070 13071 13072 13073 13074 13075 13076 13077 13078 13079 13080 13081 13082 13083 13084 13085 13086 13087 13088 13089 13090 13091 13092 13093 13094 13095 13096 13097 13098 13099 13100 13101 13102 13103 13104 13105 13106 13107 13108 13109 13110 13111 13112 13113 13114 13115 13116 13117 13118 13119 13120 13121 13122 13123 13124 13125 13126 13127 13128 13129 13130 13131 13132 13133 13134 13135 13136 13137 13138 13139 13140 13141 13142 13143 13144 13145 13146 13147 13148 13149 13150 13151 13152 13153 13154 13155 13156 13157 13158 13159 13160 13161 13162 13163 13164 13165 13166 13167 13168 13169 13170 13171 13172 13173 13174 13175 13176 13177 13178 13179 13180 13181 13182 13183 13184 13185 13186 13187 13188 13189 13190 13191 13192 13193 13194 13195 13196 13197 13198 13199 13200 13201 13202 13203 13204 13205 13206 13207 13208 13209 13210 13211 13212 13213 13214 13215 13216 13217 13218 13219 13220 13221 13222 13223 13224 13225 13226 13227 13228 13229 13230 13231 13232 13233 13234 13235 13236 13237 13238 13239 13240 13241 13242 13243 13244 13245 13246 13247 13248 13249 13250 13251 13252 13253 13254 13255 13256 13257 13258 13259 13260 13261 13262 13263 13264 13265 13266 13267 13268 13269 13270 13271 13272 13273 13274 13275 13276 13277 13278 13279 13280 13281 13282 13283 13284 13285 13286 13287 13288 13289 13290 13291 13292 13293 13294 13295 13296 13297 13298 13299 13300 13301 13302 13303 13304 13305 13306 13307 13308 13309 13310 13311 13312 13313 13314 13315 13316 13317 13318 13319 13320 13321 13322 13323 13324 13325 13326 13327 13328 13329 13330 13331 13332 13333 13334 13335 13336 13337 13338 13339 13340 13341 13342 13343 13344 13345 13346 13347 13348 13349 13350 13351 13352 13353 13354 13355 13356 13357 13358 13359 13360 13361 13362 13363 13364 13365 13366 13367 13368 13369 13370 13371 13372 13373 13374 13375 13376 13377 13378 13379 13380 13381 13382 13383 13384 13385 13386 13387 13388 13389 13390 13391 13392 13393 13394 13395 13396 13397 13398 13399 13400 13401 13402 13403 13404 13405 13406 13407 13408 13409 13410 13411 13412 13413 13414 13415 13416 13417 13418 13419 13420 13421 13422 13423 13424 13425 13426 13427 13428 13429 13430 13431 13432 13433 13434 13435 13436 13437 13438 13439 13440 13441 13442 13443 13444 13445 13446 13447 13448 13449 13450 13451 13452 13453 13454 13455 13456 13457 13458 13459 13460 13461 13462 13463 13464 13465 13466 13467 13468 13469 13470 13471 13472 13473 13474 13475 13476 13477 13478 13479 13480 13481 13482 13483 13484 13485 13486 13487 13488 13489 13490 13491 13492 13493 13494 13495 13496 13497 13498 13499 13500 13501 13502 13503 13504 13505 13506 13507 13508 13509 13510 13511 13512 13513 13514 13515 13516 13517 13518 13519 13520 13521 13522 13523 13524 13525 13526 13527 13528 13529 13530 13531 13532 13533 13534 13535 13536 13537 13538 13539 13540 13541 13542 13543 13544 13545 13546 13547 13548 13549 13550 13551 13552 13553 13554 13555 13556 13557 13558 13559 13560 13561 13562 13563 13564 13565 13566 13567 13568 13569 13570 13571 13572 13573 13574 13575 13576 13577 13578 13579 13580 13581 13582 13583 13584 13585 13586 13587 13588 13589 13590 13591 13592 13593 13594 13595 13596 13597 13598 13599 13600 13601 13602 13603 13604 13605 13606 13607 13608 13609 13610 13611 13612 13613 13614 13615 13616 13617 13618 13619 13620 13621 13622 13623 13624 13625 13626 13627 13628 13629 13630 13631 13632 13633 13634 13635 13636 13637 13638 13639 13640 13641 13642 13643 13644 13645 13646 13647 13648 13649 13650 13651 13652 13653 13654 13655 13656 13657 13658 13659 13660 13661 13662 13663 13664 13665 13666 13667 13668 13669 13670 13671 13672 13673 13674 13675 13676 13677 13678 13679 13680 13681 13682 13683 13684 13685 13686 13687 13688 13689 13690 13691 13692 13693 13694 13695 13696 13697 13698 13699 13700 13701 13702 13703 13704 13705 13706 13707 13708 13709 13710 13711 13712 13713 13714 13715 13716 13717 13718 13719 13720 13721 13722 13723 13724 13725 13726 13727 13728 13729 13730 13731 13732 13733 13734 13735 13736 13737 13738 13739 13740 13741 13742 13743 13744 13745 13746 13747 13748 13749 13750 13751 13752 13753 13754 13755 13756 13757 13758 13759 13760 13761 13762 13763 13764 13765 13766 13767 13768 13769 13770 13771 13772 13773 13774 13775 13776 13777 13778 13779 13780 13781 13782 13783 13784 13785 13786 13787 13788 13789 13790 13791 13792 13793 13794 13795 13796 13797 13798 13799 13800 13801 13802 13803 13804 13805 13806 13807 13808 13809 13810 13811 13812 13813 13814 13815 13816 13817 13818 13819 13820 13821 13822 13823 13824 13825 13826 13827 13828 13829 13830 13831 13832 13833 13834 13835 13836 13837 13838 13839 13840 13841 13842 13843 13844 13845 13846 13847 13848 13849 13850 13851 13852 13853 13854 13855 13856 13857 13858 13859 13860 13861 13862 13863 13864 13865 13866 13867 13868 13869 13870 13871 13872 13873 13874 13875 13876 13877 13878 13879 13880 13881 13882 13883 13884 13885 13886 13887 13888 13889 13890 13891 13892 13893 13894 13895 13896 13897 13898 13899 13900 13901 13902 13903 13904 13905 13906 13907 13908 13909 13910 13911 13912 13913 13914 13915 13916 13917 13918 13919 13920 13921 13922 13923 13924 13925 13926 13927 13928 13929 13930 13931 13932 13933 13934 13935 13936 13937 13938 13939 13940 13941 13942 13943 13944 13945 13946 13947 13948 13949 13950 13951 13952 13953 13954 13955 13956 13957 13958 13959 13960 13961 13962 13963 13964 13965 13966 13967 13968 13969 13970 13971 13972 13973 13974 13975 13976 13977 13978 13979 13980 13981 13982 13983 13984 13985 13986 13987 13988 13989 13990 13991 13992 13993 13994 13995 13996 13997 13998 13999 14000 14001 14002 14003 14004 14005 14006 14007 14008 14009 14010 14011 14012 14013 14014 14015 14016 14017 14018 14019 14020 14021 14022 14023 14024 14025 14026 14027 14028 14029 14030 14031 14032 14033 14034 14035 14036 14037 14038 14039 14040 14041 14042 14043 14044 14045 14046 14047 14048 14049 14050 14051 14052 14053 14054 14055 14056 14057 14058 14059 14060 14061 14062 14063 14064 14065 14066 14067 14068 14069 14070 14071 14072 14073 14074 14075 14076 14077 14078 14079 14080 14081 14082 14083 14084 14085 14086 14087 14088 14089 14090 14091 14092 14093 14094 14095 14096 14097 14098 14099 14100 14101 14102 14103 14104 14105 14106 14107 14108 14109 14110 14111 14112 14113 14114 14115 14116 14117 14118 14119 14120 14121 14122 14123 14124 14125 14126 14127 14128 14129 14130 14131 14132 14133 14134 14135 14136 14137 14138 14139 14140 14141 14142 14143 14144 14145 14146 14147 14148 14149 14150 14151 14152 14153 14154 14155 14156 14157 14158 14159 14160 14161 14162 14163 14164 14165 14166 14167 14168 14169 14170 14171 14172 14173 14174 14175 14176 14177 14178 14179 14180 14181 14182 14183 14184 14185 14186 14187 14188 14189 14190 14191 14192 14193 14194 14195 14196 14197 14198 14199 14200 14201 14202 14203 14204 14205 14206 14207 14208 14209 14210 14211 14212 14213 14214 14215 14216 14217 14218 14219 14220 14221 14222 14223 14224 14225 14226 14227 14228 14229 14230 14231 14232 14233 14234 14235 14236 14237 14238 14239 14240 14241 14242 14243 14244 14245 14246 14247 14248 14249 14250 14251 14252 14253 14254 14255 14256 14257 14258 14259 14260 14261 14262 14263 14264 14265 14266 14267 14268 14269 14270 14271 14272 14273 14274 14275 14276 14277 14278 14279 14280 14281 14282 14283 14284 14285 14286 14287 14288 14289 14290 14291 14292 14293 14294 14295 14296 14297 14298 14299 14300 14301 14302 14303 14304 14305 14306 14307 14308 14309 14310 14311 14312 14313 14314 14315 14316 14317 14318 14319 14320 14321 14322 14323 14324 14325 14326 14327 14328 14329 14330 14331 14332 14333 14334 14335 14336 14337 14338 14339 14340 14341 14342 14343 14344 14345 14346 14347 14348 14349 14350 14351 14352 14353 14354 14355 14356 14357 14358 14359 14360 14361 14362 14363 14364 14365 14366 14367 14368 14369 14370 14371 14372 14373 14374 14375 14376 14377 14378 14379 14380 14381 14382 14383 14384 14385 14386 14387 14388 14389 14390 14391 14392 14393 14394 14395 14396 14397 14398 14399 14400 14401 14402 14403 14404 14405 14406 14407 14408 14409 14410 14411 14412 14413 14414 14415 14416 14417 14418 14419 14420 14421 14422 14423 14424 14425 14426 14427 14428 14429 14430 14431 14432 14433 14434 14435 14436 14437 14438 14439 14440 14441 14442 14443 14444 14445 14446 14447 14448 14449 14450 14451 14452 14453 14454 14455 14456 14457 14458 14459 14460 14461 14462 14463 14464 14465 14466 14467 14468 14469 14470 14471 14472 14473 14474 14475 14476 14477 14478 14479 14480 14481 14482 14483 14484 14485 14486 14487 14488 14489 14490 14491 14492 14493 14494 14495 14496 14497 14498 14499 14500 14501 14502 14503 14504 14505 14506 14507 14508 14509 14510 14511 14512 14513 14514 14515 14516 14517 14518 14519 14520 14521 14522 14523 14524 14525 14526 14527 14528 14529 14530 14531 14532 14533 14534 14535 14536 14537 14538 14539 14540 14541 14542 14543 14544 14545 14546 14547 14548 14549 14550 14551 14552 14553 14554 14555 14556 14557 14558 14559 14560 14561 14562 14563 14564 14565 14566 14567 14568 14569 14570 14571 14572 14573 14574 14575 14576 14577 14578 14579 14580 14581 14582 14583 14584 14585 14586 14587 14588 14589 14590 14591 14592 14593 14594 14595 14596 14597 14598 14599 14600 14601 14602 14603 14604 14605 14606 14607 14608 14609 14610 14611 14612 14613 14614 14615 14616 14617 14618 14619 14620 14621 14622 14623 14624 14625 14626 14627 14628 14629 14630 14631 14632 14633 14634 14635 14636 14637 14638 14639 14640 14641 14642 14643 14644 14645 14646 14647 14648 14649 14650 14651 14652 14653 14654 14655 14656 14657 14658 14659 14660 14661 14662 14663 14664 14665 14666 14667 14668 14669 14670 14671 14672 14673 14674 14675 14676 14677 14678 14679 14680 14681 14682 14683 14684 14685 14686 14687 14688 14689 14690 14691 14692 14693 14694 14695 14696 14697 14698 14699 14700 14701 14702 14703 14704 14705 14706 14707 14708 14709 14710 14711 14712 14713 14714 14715 14716 14717 14718 14719 14720 14721 14722 14723 14724 14725 14726 14727 14728 14729 14730 14731 14732 14733 14734 14735 14736 14737 14738 14739 14740 14741 14742 14743 14744 14745 14746 14747 14748 14749 14750 14751 14752 14753 14754 14755 14756 14757 14758 14759 14760 14761 14762 14763 14764 14765 14766 14767 14768 14769 14770 14771 14772 14773 14774 14775 14776 14777 14778 14779 14780 14781 14782 14783 14784 14785 14786 14787 14788 14789 14790 14791 14792 14793 14794 14795 14796 14797 14798 14799 14800 14801 14802 14803 14804 14805 14806 14807 14808 14809 14810 14811 14812 14813 14814 14815 14816 14817 14818 14819 14820 14821 14822 14823 14824 14825 14826 14827 14828 14829 14830 14831 14832 14833 14834 14835 14836 14837 14838 14839 14840 14841 14842 14843 14844 14845 14846 14847 14848 14849 14850 14851 14852 14853 14854 14855 14856 14857 14858 14859 14860 14861 14862 14863 14864 14865 14866 14867 14868 14869 14870 14871 14872 14873 14874 14875 14876 14877 14878 14879 14880 14881 14882 14883 14884 14885 14886 14887 14888 14889 14890 14891 14892 14893 14894 14895 14896 14897 14898 14899 14900 14901 14902 14903 14904 14905 14906 14907 14908 14909 14910 14911 14912 14913 14914 14915 14916 14917 14918 14919 14920 14921 14922 14923 14924 14925 14926 14927 14928 14929 14930 14931 14932 14933 14934 14935 14936 14937 14938 14939 14940 14941 14942 14943 14944 14945 14946 14947 14948 14949 14950 14951 14952 14953 14954 14955 14956 14957 14958 14959 14960 14961 14962 14963 14964 14965 14966 14967 14968 14969 14970 14971 14972 14973 14974 14975 14976 14977 14978 14979 14980 14981 14982 14983 14984 14985 14986 14987 14988 14989 14990 14991 14992 14993 14994 14995 14996 14997 14998 14999 15000 15001 15002 15003 15004 15005 15006 15007 15008 15009 15010 15011 15012 15013 15014 15015 15016 15017 15018 15019 15020 15021 15022 15023 15024 15025 15026 15027 15028 15029 15030 15031 15032 15033 15034 15035 15036 15037 15038 15039 15040 15041 15042 15043 15044 15045 15046 15047 15048 15049 15050 15051 15052 15053 15054 15055 15056 15057 15058 15059 15060 15061 15062 15063 15064 15065 15066 15067 15068 15069 15070 15071 15072 15073 15074 15075 15076 15077 15078 15079 15080 15081 15082 15083 15084 15085 15086 15087 15088 15089 15090 15091 15092 15093 15094 15095 15096 15097 15098 15099 15100 15101 15102 15103 15104 15105 15106 15107 15108 15109 15110 15111 15112 15113 15114 15115 15116 15117 15118 15119 15120 15121 15122 15123 15124 15125 15126 15127 15128 15129 15130 15131 15132 15133 15134 15135 15136 15137 15138 15139 15140 15141 15142 15143 15144 15145 15146 15147 15148 15149 15150 15151 15152 15153 15154 15155 15156 15157 15158 15159 15160 15161 15162 15163 15164 15165 15166 15167 15168 15169 15170 15171 15172 15173 15174 15175 15176 15177 15178 15179 15180 15181 15182 15183 15184 15185 15186 15187 15188 15189 15190 15191 15192 15193 15194 15195 15196 15197 15198 15199 15200 15201 15202 15203 15204 15205 15206 15207 15208 15209 15210 15211 15212 15213 15214 15215 15216 15217 15218 15219 15220 15221 15222 15223 15224 15225 15226 15227 15228 15229 15230 15231 15232 15233 15234 15235 15236 15237 15238 15239 15240 15241 15242 15243 15244 15245 15246 15247 15248 15249 15250 15251 15252 15253 15254 15255 15256 15257 15258 15259 15260 15261 15262 15263 15264 15265 15266 15267 15268 15269 15270 15271 15272 15273 15274 15275 15276 15277 15278 15279 15280 15281 15282 15283 15284 15285 15286 15287 15288 15289 15290 15291 15292 15293 15294 15295 15296 15297 15298 15299 15300 15301 15302 15303 15304 15305 15306 15307 15308 15309 15310 15311 15312 15313 15314 15315 15316 15317 15318 15319 15320 15321 15322 15323 15324 15325 15326 15327 15328 15329 15330 15331 15332 15333 15334 15335 15336 15337 15338 15339 15340 15341 15342 15343 15344 15345 15346 15347 15348 15349 15350 15351 15352 15353 15354 15355 15356 15357 15358 15359 15360 15361 15362 15363 15364 15365 15366 15367 15368 15369 15370 15371 15372 15373 15374 15375 15376 15377 15378 15379 15380 15381 15382 15383 15384 15385 15386 15387 15388 15389 15390 15391 15392 15393 15394 15395 15396 15397 15398 15399 15400 15401 15402 15403 15404 15405 15406 15407 15408 15409 15410 15411 15412 15413 15414 15415 15416 15417 15418 15419 15420 15421 15422 15423 15424 15425 15426 15427 15428 15429 15430 15431 15432 15433 15434 15435 15436 15437 15438 15439 15440 15441 15442 15443 15444 15445 15446 15447 15448 15449 15450 15451 15452 15453 15454 15455 15456 15457 15458 15459 15460 15461 15462 15463 15464 15465 15466 15467 15468 15469 15470 15471 15472 15473 15474 15475 15476 15477 15478 15479 15480 15481 15482 15483 15484 15485 15486 15487 15488 15489 15490 15491 15492 15493 15494 15495 15496 15497 15498 15499 15500 15501 15502 15503 15504 15505 15506 15507 15508 15509 15510 15511 15512 15513 15514 15515 15516 15517 15518 15519 15520 15521 15522 15523 15524 15525 15526 15527 15528 15529 15530 15531 15532 15533 15534 15535 15536 15537 15538 15539 15540 15541 15542 15543 15544 15545 15546 15547 15548 15549 15550 15551 15552 15553 15554 15555 15556 15557 15558 15559 15560 15561 15562 15563 15564 15565 15566 15567 15568 15569 15570 15571 15572 15573 15574 15575 15576 15577 15578 15579 15580 15581 15582 15583 15584 15585 15586 15587 15588 15589 15590 15591 15592 15593 15594 15595 15596 15597 15598 15599 15600 15601 15602 15603 15604 15605 15606 15607 15608 15609 15610 15611 15612 15613 15614 15615 15616 15617 15618 15619 15620 15621 15622 15623 15624 15625 15626 15627 15628 15629 15630 15631 15632 15633 15634 15635 15636 15637 15638 15639 15640 15641 15642 15643 15644 15645 15646 15647 15648 15649 15650 15651 15652 15653 15654 15655 15656 15657 15658 15659 15660 15661 15662 15663 15664 15665 15666 15667 15668 15669 15670 15671 15672 15673 15674 15675 15676 15677 15678 15679 15680 15681 15682 15683 15684 15685 15686 15687 15688 15689 15690 15691 15692 15693 15694 15695 15696 15697 15698 15699 15700 15701 15702 15703 15704 15705 15706 15707 15708 15709 15710 15711 15712 15713 15714 15715 15716 15717 15718 15719 15720 15721 15722 15723 15724 15725 15726 15727 15728 15729 15730 15731 15732 15733 15734 15735 15736 15737 15738 15739 15740 15741 15742 15743 15744 15745 15746 15747 15748 15749 15750 15751 15752 15753 15754 15755 15756 15757 15758 15759 15760 15761 15762 15763 15764 15765 15766 15767 15768 15769 15770 15771 15772 15773 15774 15775 15776 15777 15778 15779 15780 15781 15782 15783 15784 15785 15786 15787 15788 15789 15790 15791 15792 15793 15794 15795 15796 15797 15798 15799 15800 15801 15802 15803 15804 15805 15806 15807 15808 15809 15810 15811 15812 15813 15814 15815 15816 15817 15818 15819 15820 15821 15822 15823 15824 15825 15826 15827 15828 15829 15830 15831 15832 15833 15834 15835 15836 15837 15838 15839 15840 15841 15842 15843 15844 15845 15846 15847 15848 15849 15850 15851 15852 15853 15854 15855 15856 15857 15858 15859 15860 15861 15862 15863 15864 15865 15866 15867 15868 15869 15870 15871 15872 15873 15874 15875 15876 15877 15878 15879 15880 15881 15882 15883 15884 15885 15886 15887 15888 15889 15890 15891 15892 15893 15894 15895 15896 15897 15898 15899 15900 15901 15902 15903 15904 15905 15906 15907 15908 15909 15910 15911 15912 15913 15914 15915 15916 15917 15918 15919 15920 15921 15922 15923 15924 15925 15926 15927 15928 15929 15930 15931 15932 15933 15934 15935 15936 15937 15938 15939 15940 15941 15942 15943 15944 15945 15946 15947 15948 15949 15950 15951 15952 15953 15954 15955 15956 15957 15958 15959 15960 15961 15962 15963 15964 15965 15966 15967 15968 15969 15970 15971 15972 15973 15974 15975 15976 15977 15978 15979 15980 15981 15982 15983 15984 15985 15986 15987 15988 15989 15990 15991 15992 15993 15994 15995 15996 15997 15998 15999 16000 16001 16002 16003 16004 16005 16006 16007 16008 16009 16010 16011 16012 16013 16014 16015 16016 16017 16018 16019 16020 16021 16022 16023 16024 16025 16026 16027 16028 16029 16030 16031 16032 16033 16034 16035 16036 16037 16038 16039 16040 16041 16042 16043 16044 16045 16046 16047 16048 16049 16050 16051 16052 16053 16054 16055 16056 16057 16058 16059 16060 16061 16062 16063 16064 16065 16066 16067 16068 16069 16070 16071 16072 16073 16074 16075 16076 16077 16078 16079 16080 16081 16082 16083 16084 16085 16086 16087 16088 16089 16090 16091 16092 16093 16094 16095 16096 16097 16098 16099 16100 16101 16102 16103 16104 16105 16106 16107 16108 16109 16110 16111 16112 16113 16114 16115 16116 16117 16118 16119 16120 16121 16122 16123 16124 16125 16126 16127 16128 16129 16130 16131 16132 16133 16134 16135 16136 16137 16138 16139 16140 16141 16142 16143 16144 16145 16146 16147 16148 16149 16150 16151 16152 16153 16154 16155 16156 16157 16158 16159 16160 16161 16162 16163 16164 16165 16166 16167 16168 16169 16170 16171 16172 16173 16174 16175 16176 16177 16178 16179 16180 16181 16182 16183 16184 16185 16186 16187 16188 16189 16190 16191 16192 16193 16194 16195 16196 16197 16198 16199 16200 16201 16202 16203 16204 16205 16206 16207 16208 16209 16210 16211 16212 16213 16214 16215 16216 16217 16218 16219 16220 16221 16222 16223 16224 16225 16226 16227 16228 16229 16230 16231 16232 16233 16234 16235 16236 16237 16238 16239 16240 16241 16242 16243 16244 16245 16246 16247 16248 16249 16250 16251 16252 16253 16254 16255 16256 16257 16258 16259 16260 16261 16262 16263 16264 16265 16266 16267 16268 16269 16270 16271 16272 16273 16274 16275 16276 16277 16278 16279 16280 16281 16282 16283 16284 16285 16286 16287 16288 16289 16290 16291 16292 16293 16294 16295 16296 16297 16298 16299 16300 16301 16302 16303 16304 16305 16306 16307 16308 16309 16310 16311 16312 16313 16314 16315 16316 16317 16318 16319 16320 16321 16322 16323 16324 16325 16326 16327 16328 16329 16330 16331 16332 16333 16334 16335 16336 16337 16338 16339 16340 16341 16342 16343 16344 16345 16346 16347 16348 16349 16350 16351 16352 16353 16354 16355 16356 16357 16358 16359 16360 16361 16362 16363 16364 16365 16366 16367 16368 16369 16370 16371 16372 16373 16374 16375 16376 16377 16378 16379 16380 16381 16382 16383 16384 16385 16386 16387 16388 16389 16390 16391 16392 16393 16394 16395 16396 16397 16398 16399 16400 16401 16402 16403 16404 16405 16406 16407 16408 16409 16410 16411 16412 16413 16414 16415 16416 16417 16418 16419 16420 16421 16422 16423 16424 16425 16426 16427 16428 16429 16430 16431 16432 16433 16434 16435 16436 16437 16438 16439 16440 16441 16442 16443 16444 16445 16446 16447 16448 16449 16450 16451 16452 16453 16454 16455 16456 16457 16458 16459 16460 16461 16462 16463 16464 16465 16466 16467 16468 16469 16470 16471 16472 16473 16474 16475 16476 16477 16478 16479 16480 16481 16482 16483 16484 16485 16486 16487 16488 16489 16490 16491 16492 16493 16494 16495 16496 16497 16498 16499 16500 16501 16502 16503 16504 16505 16506 16507 16508 16509 16510 16511 16512 16513 16514 16515 16516 16517 16518 16519 16520 16521 16522 16523 16524 16525 16526 16527 16528 16529 16530 16531 16532 16533 16534 16535 16536 16537 16538 16539 16540 16541 16542 16543 16544 16545 16546 16547 16548 16549 16550 16551 16552 16553 16554 16555 16556 16557 16558 16559 16560 16561 16562 16563 16564 16565 16566 16567 16568 16569 16570 16571 16572 16573 16574 16575 16576 16577 16578 16579 16580 16581 16582 16583 16584 16585 16586 16587 16588 16589 16590 16591 16592 16593 16594 16595 16596 16597 16598 16599 16600 16601 16602 16603 16604 16605 16606 16607 16608 16609 16610 16611 16612 16613 16614 16615 16616 16617 16618 16619 16620 16621 16622 16623 16624 16625 16626 16627 16628 16629 16630 16631 16632 16633 16634 16635 16636 16637 16638 16639 16640 16641 16642 16643 16644 16645 16646 16647 16648 16649 16650 16651 16652 16653 16654 16655 16656 16657 16658 16659 16660 16661 16662 16663 16664 16665 16666 16667 16668 16669 16670 16671 16672 16673 16674 16675 16676 16677 16678 16679 16680 16681 16682 16683 16684 16685 16686 16687 16688 16689 16690 16691 16692 16693 16694 16695 16696 16697 16698 16699 16700 16701 16702 16703 16704 16705 16706 16707 16708 16709 16710 16711 16712 16713 16714 16715 16716 16717 16718 16719 16720 16721 16722 16723 16724 16725 16726 16727 16728 16729 16730 16731 16732 16733 16734 16735 16736 16737 16738 16739 16740 16741 16742 16743 16744 16745 16746 16747 16748 16749 16750 16751 16752 16753 16754 16755 16756 16757 16758 16759 16760 16761 16762 16763 16764 16765 16766 16767 16768 16769 16770 16771 16772 16773 16774 16775 16776 16777 16778 16779 16780 16781 16782 16783 16784 16785 16786 16787 16788 16789 16790 16791 16792 16793 16794 16795 16796 16797 16798 16799 16800 16801 16802 16803 16804 16805 16806 16807 16808 16809 16810 16811 16812 16813 16814 16815 16816 16817 16818 16819 16820 16821 16822 16823 16824 16825 16826 16827 16828 16829 16830 16831 16832 16833 16834 16835 16836 16837 16838 16839 16840 16841 16842 16843 16844 16845 16846 16847 16848 16849 16850 16851 16852 16853 16854 16855 16856 16857 16858 16859 16860 16861 16862 16863 16864 16865 16866 16867 16868 16869 16870 16871 16872 16873 16874 16875 16876 16877 16878 16879 16880 16881 16882 16883 16884 16885 16886 16887 16888 16889 16890 16891 16892 16893 16894 16895 16896 16897 16898 16899 16900 16901 16902 16903 16904 16905 16906 16907 16908 16909 16910 16911 16912 16913 16914 16915 16916 16917 16918 16919 16920 16921 16922 16923 16924 16925 16926 16927 16928 16929 16930 16931 16932 16933 16934 16935 16936 16937 16938 16939 16940 16941 16942 16943 16944 16945 16946 16947 16948 16949 16950 16951 16952 16953 16954 16955 16956 16957 16958 16959 16960 16961 16962 16963 16964 16965 16966 16967 16968 16969 16970 16971 16972 16973 16974 16975 16976 16977 16978 16979 16980 16981 16982 16983 16984 16985 16986 16987 16988 16989 16990 16991 16992 16993 16994 16995 16996 16997 16998 16999 17000 17001 17002 17003 17004 17005 17006 17007 17008 17009 17010 17011 17012 17013 17014 17015 17016 17017 17018 17019 17020 17021 17022 17023 17024 17025 17026 17027 17028 17029 17030 17031 17032 17033 17034 17035 17036 17037 17038 17039 17040 17041 17042 17043 17044 17045 17046 17047 17048 17049 17050 17051 17052 17053 17054 17055 17056 17057 17058 17059 17060 17061 17062 17063 17064 17065 17066 17067 17068 17069 17070 17071 17072 17073 17074 17075 17076 17077 17078 17079 17080 17081 17082 17083 17084 17085 17086 17087 17088 17089 17090 17091 17092 17093 17094 17095 17096 17097 17098 17099 17100 17101 17102 17103 17104 17105 17106 17107 17108 17109 17110 17111 17112 17113 17114 17115 17116 17117 17118 17119 17120 17121 17122 17123 17124 17125 17126 17127 17128 17129 17130 17131 17132 17133 17134 17135 17136 17137 17138 17139 17140 17141 17142 17143 17144 17145 17146 17147 17148 17149 17150 17151 17152 17153 17154 17155 17156 17157 17158 17159 17160 17161 17162 17163 17164 17165 17166 17167 17168 17169 17170 17171 17172 17173 17174 17175 17176 17177 17178 17179 17180 17181 17182 17183 17184 17185 17186 17187 17188 17189 17190 17191 17192 17193 17194 17195 17196 17197 17198 17199 17200 17201 17202 17203 17204 17205 17206 17207 17208 17209 17210 17211 17212 17213 17214 17215 17216 17217 17218 17219 17220 17221 17222 17223 17224 17225 17226 17227 17228 17229 17230 17231 17232 17233 17234 17235 17236 17237 17238 17239 17240 17241 17242 17243 17244 17245 17246 17247 17248 17249 17250 17251 17252 17253 17254 17255 17256 17257 17258 17259 17260 17261 17262 17263 17264 17265 17266 17267 17268 17269 17270 17271 17272 17273 17274 17275 17276 17277 17278 17279 17280 17281 17282 17283 17284 17285 17286 17287 17288 17289 17290 17291 17292 17293 17294 17295 17296 17297 17298 17299 17300 17301 17302 17303 17304 17305 17306 17307 17308 17309 17310 17311 17312 17313 17314 17315 17316 17317 17318 17319 17320 17321 17322 17323 17324 17325 17326 17327 17328 17329 17330 17331 17332 17333 17334 17335 17336 17337 17338 17339 17340 17341 17342 17343 17344 17345 17346 17347 17348 17349 17350 17351 17352 17353 17354 17355 17356 17357 17358 17359 17360 17361 17362 17363 17364 17365 17366 17367 17368 17369 17370 17371 17372 17373 17374 17375 17376 17377 17378 17379 17380 17381 17382 17383 17384 17385 17386 17387 17388 17389 17390 17391 17392 17393 17394 17395 17396 17397 17398 17399 17400 17401 17402 17403 17404 17405 17406 17407 17408 17409 17410 17411 17412 17413 17414 17415 17416 17417 17418 17419 17420 17421 17422 17423 17424 17425 17426 17427 17428 17429 17430 17431 17432 17433 17434 17435 17436 17437 17438 17439 17440 17441 17442 17443 17444 17445 17446 17447 17448 17449 17450 17451 17452 17453 17454 17455 17456 17457 17458 17459 17460 17461 17462 17463 17464 17465 17466 17467 17468 17469 17470 17471 17472 17473 17474 17475 17476 17477 17478 17479 17480 17481 17482 17483 17484 17485 17486 17487 17488 17489 17490 17491 17492 17493 17494 17495 17496 17497 17498 17499 17500 17501 17502 17503 17504 17505 17506 17507 17508 17509 17510 17511 17512 17513 17514 17515 17516 17517 17518 17519 17520 17521 17522 17523 17524 17525 17526 17527 17528 17529 17530 17531 17532 17533 17534 17535 17536 17537 17538 17539 17540 17541 17542 17543 17544 17545 17546 17547 17548 17549 17550 17551 17552 17553 17554 17555 17556 17557 17558 17559 17560 17561 17562 17563 17564 17565 17566 17567 17568 17569 17570 17571 17572 17573 17574 17575 17576 17577 17578 17579 17580 17581 17582 17583 17584 17585 17586 17587 17588 17589 17590 17591 17592 17593 17594 17595 17596 17597 17598 17599 17600 17601 17602 17603 17604 17605 17606 17607 17608 17609 17610 17611 17612 17613 17614 17615 17616 17617 17618 17619 17620 17621 17622 17623 17624 17625 17626 17627 17628 17629 17630 17631 17632 17633 17634 17635 17636 17637 17638 17639 17640 17641 17642 17643 17644 17645 17646 17647 17648 17649 17650 17651 17652 17653 17654 17655 17656 17657 17658 17659 17660 17661 17662 17663 17664 17665 17666 17667 17668 17669 17670 17671 17672 17673 17674 17675 17676 17677 17678 17679 17680 17681 17682 17683 17684 17685 17686 17687 17688 17689 17690 17691 17692 17693 17694 17695 17696 17697 17698 17699 17700 17701 17702 17703 17704 17705 17706 17707 17708 17709 17710 17711 17712 17713 17714 17715 17716 17717 17718 17719 17720 17721 17722 17723 17724 17725 17726 17727 17728 17729 17730 17731 17732 17733 17734 17735 17736 17737 17738 17739 17740 17741 17742 17743 17744 17745 17746 17747 17748 17749 17750 17751 17752 17753 17754 17755 17756 17757 17758 17759 17760 17761 17762 17763 17764 17765 17766 17767 17768 17769 17770 17771 17772 17773 17774 17775 17776 17777 17778 17779 17780 17781 17782 17783 17784 17785 17786 17787 17788 17789 17790 17791 17792 17793 17794 17795 17796 17797 17798 17799 17800 17801 17802 17803 17804 17805 17806 17807 17808 17809 17810 17811 17812 17813 17814 17815 17816 17817 17818 17819 17820 17821 17822 17823 17824 17825 17826 17827 17828 17829 17830 17831 17832 17833 17834 17835 17836 17837 17838 17839 17840 17841 17842 17843 17844 17845 17846 17847 17848 17849 17850 17851 17852 17853 17854 17855 17856 17857 17858 17859 17860 17861 17862 17863 17864 17865 17866 17867 17868 17869 17870 17871 17872 17873 17874 17875 17876 17877 17878 17879 17880 17881 17882 17883 17884 17885 17886 17887 17888 17889 17890 17891 17892 17893 17894 17895 17896 17897 17898 17899 17900 17901 17902 17903 17904 17905 17906 17907 17908 17909 17910 17911 17912 17913 17914 17915 17916 17917 17918 17919 17920 17921 17922 17923 17924 17925 17926 17927 17928 17929 17930 17931 17932 17933 17934 17935 17936 17937 17938 17939 17940 17941 17942 17943 17944 17945 17946 17947 17948 17949 17950 17951 17952 17953 17954 17955 17956 17957 17958 17959 17960 17961 17962 17963 17964 17965 17966 17967 17968 17969 17970 17971 17972 17973 17974 17975 17976 17977 17978 17979 17980 17981 17982 17983 17984 17985 17986 17987 17988 17989 17990 17991 17992 17993 17994 17995 17996 17997 17998 17999 18000 18001 18002 18003 18004 18005 18006 18007 18008 18009 18010 18011 18012 18013 18014 18015 18016 18017 18018 18019 18020 18021 18022 18023 18024 18025 18026 18027 18028 18029 18030 18031 18032 18033 18034 18035 18036 18037 18038 18039 18040 18041 18042 18043 18044 18045 18046 18047 18048 18049 18050 18051 18052 18053 18054 18055 18056 18057 18058 18059 18060 18061 18062 18063 18064 18065 18066 18067 18068 18069 18070 18071 18072 18073 18074 18075 18076 18077 18078 18079 18080 18081 18082 18083 18084 18085 18086 18087 18088 18089 18090 18091 18092 18093 18094 18095 18096 18097 18098 18099 18100 18101 18102 18103 18104 18105 18106 18107 18108 18109 18110 18111 18112 18113 18114 18115 18116 18117 18118 18119 18120 18121 18122 18123 18124 18125 18126 18127 18128 18129 18130 18131 18132 18133 18134 18135 18136 18137 18138 18139 18140 18141 18142 18143 18144 18145 18146 18147 18148 18149 18150 18151 18152 18153 18154 18155 18156 18157 18158 18159 18160 18161 18162 18163 18164 18165 18166 18167 18168 18169 18170 18171 18172 18173 18174 18175 18176 18177 18178 18179 18180 18181 18182 18183 18184 18185 18186 18187 18188 18189 18190 18191 18192 18193 18194 18195 18196 18197 18198 18199 18200 18201 18202 18203 18204 18205 18206 18207 18208 18209 18210 18211 18212 18213 18214 18215 18216 18217 18218 18219 18220 18221 18222 18223 18224 18225 18226 18227 18228 18229 18230 18231 18232 18233 18234 18235 18236 18237 18238 18239 18240 18241 18242 18243 18244 18245 18246 18247 18248 18249 18250 18251 18252 18253 18254 18255 18256 18257 18258 18259 18260 18261 18262 18263 18264 18265 18266 18267 18268 18269 18270 18271 18272 18273 18274 18275 18276 18277 18278 18279 18280 18281 18282 18283 18284 18285 18286 18287 18288 18289 18290 18291 18292 18293 18294 18295 18296 18297 18298 18299 18300 18301 18302 18303 18304 18305 18306 18307 18308 18309 18310 18311 18312 18313 18314 18315 18316 18317 18318 18319 18320 18321 18322 18323 18324 18325 18326 18327 18328 18329 18330 18331 18332 18333 18334 18335 18336 18337 18338 18339 18340 18341 18342 18343 18344 18345 18346 18347 18348 18349 18350 18351 18352 18353 18354 18355 18356 18357 18358 18359 18360 18361 18362 18363 18364 18365 18366 18367 18368 18369 18370 18371 18372 18373 18374 18375 18376 18377 18378 18379 18380 18381 18382 18383 18384 18385 18386 18387 18388 18389 18390 18391 18392 18393 18394 18395 18396 18397 18398 18399 18400 18401 18402 18403 18404 18405 18406 18407 18408 18409 18410 18411 18412 18413 18414 18415 18416 18417 18418 18419 18420 18421 18422 18423 18424 18425 18426 18427 18428 18429 18430 18431 18432 18433 18434 18435 18436 18437 18438 18439 18440 18441 18442 18443 18444 18445 18446 18447 18448 18449 18450 18451 18452 18453 18454 18455 18456 18457 18458 18459 18460 18461 18462 18463 18464 18465 18466 18467 18468 18469 18470 18471 18472 18473 18474 18475 18476 18477 18478 18479 18480 18481 18482 18483 18484 18485 18486 18487 18488 18489 18490 18491 18492 18493 18494 18495 18496 18497 18498 18499 18500 18501 18502 18503 18504 18505 18506 18507 18508 18509 18510 18511 18512 18513 18514 18515 18516 18517 18518 18519 18520 18521 18522 18523 18524 18525 18526 18527 18528 18529 18530 18531 18532 18533 18534 18535 18536 18537 18538 18539 18540 18541 18542 18543 18544 18545 18546 18547 18548 18549 18550 18551 18552 18553 18554 18555 18556 18557 18558 18559 18560 18561 18562 18563 18564 18565 18566 18567 18568 18569 18570 18571 18572 18573 18574 18575 18576 18577 18578 18579 18580 18581 18582 18583 18584 18585 18586 18587 18588 18589 18590 18591 18592 18593 18594 18595 18596 18597 18598 18599 18600 18601 18602 18603 18604 18605 18606 18607 18608 18609 18610 18611 18612 18613 18614 18615 18616 18617 18618 18619 18620 18621 18622 18623 18624 18625 18626 18627 18628 18629 18630 18631 18632 18633 18634 18635 18636 18637 18638 18639 18640 18641 18642 18643 18644 18645 18646 18647 18648 18649 18650 18651 18652 18653 18654 18655 18656 18657 18658 18659 18660 18661 18662 18663 18664 18665 18666 18667 18668 18669 18670 18671 18672 18673 18674 18675 18676 18677 18678 18679 18680 18681 18682 18683 18684 18685 18686 18687 18688 18689 18690 18691 18692 18693 18694 18695 18696 18697 18698 18699 18700 18701 18702 18703 18704 18705 18706 18707 18708 18709 18710 18711 18712 18713 18714 18715 18716 18717 18718 18719 18720 18721 18722 18723 18724 18725 18726 18727 18728 18729 18730 18731 18732 18733 18734 18735 18736 18737 18738 18739 18740 18741 18742 18743 18744 18745 18746 18747 18748 18749 18750 18751 18752 18753 18754 18755 18756 18757 18758 18759 18760 18761 18762 18763 18764 18765 18766 18767 18768 18769 18770 18771 18772 18773 18774 18775 18776 18777 18778 18779 18780 18781 18782 18783 18784 18785 18786 18787 18788 18789 18790 18791 18792 18793 18794 18795 18796 18797 18798 18799 18800 18801 18802 18803 18804 18805 18806 18807 18808 18809 18810 18811 18812 18813 18814 18815 18816 18817 18818 18819 18820 18821 18822 18823 18824 18825 18826 18827 18828 18829 18830 18831 18832 18833 18834 18835 18836 18837 18838 18839 18840 18841 18842 18843 18844 18845 18846 18847 18848 18849 18850 18851 18852 18853 18854 18855 18856 18857 18858 18859 18860 18861 18862 18863 18864 18865 18866 18867 18868 18869 18870 18871 18872 18873 18874 18875 18876 18877 18878 18879 18880 18881 18882 18883 18884 18885 18886 18887 18888 18889 18890 18891 18892 18893 18894 18895 18896 18897 18898 18899 18900 18901 18902 18903 18904 18905 18906 18907 18908 18909 18910 18911 18912 18913 18914 18915 18916 18917 18918 18919 18920 18921 18922 18923 18924 18925 18926 18927 18928 18929 18930 18931 18932 18933 18934 18935 18936 18937 18938 18939 18940 18941 18942 18943 18944 18945 18946 18947 18948 18949 18950 18951 18952 18953 18954 18955 18956 18957 18958 18959 18960 18961 18962 18963 18964 18965 18966 18967 18968 18969 18970 18971 18972 18973 18974 18975 18976 18977 18978 18979 18980 18981 18982 18983 18984 18985 18986 18987 18988 18989 18990 18991 18992 18993 18994 18995 18996 18997 18998 18999 19000 19001 19002 19003 19004 19005 19006 19007 19008 19009 19010 19011 19012 19013 19014 19015 19016 19017 19018 19019 19020 19021 19022 19023 19024 19025 19026 19027 19028 19029 19030 19031 19032 19033 19034 19035 19036 19037 19038 19039 19040 19041 19042 19043 19044 19045 19046 19047 19048 19049 19050 19051 19052 19053 19054 19055 19056 19057 19058 19059 19060 19061 19062 19063 19064 19065 19066 19067 19068 19069 19070 19071 19072 19073 19074 19075 19076 19077 19078 19079 19080 19081 19082 19083 19084 19085 19086 19087 19088 19089 19090 19091 19092 19093 19094 19095 19096 19097 19098 19099 19100 19101 19102 19103 19104 19105 19106 19107 19108 19109 19110 19111 19112 19113 19114 19115 19116 19117 19118 19119 19120 19121 19122 19123 19124 19125 19126 19127 19128 19129 19130 19131 19132 19133 19134 19135 19136 19137 19138 19139 19140 19141 19142 19143 19144 19145 19146 19147 19148 19149 19150 19151 19152 19153 19154 19155 19156 19157 19158 19159 19160 19161 19162 19163 19164 19165 19166 19167 19168 19169 19170 19171 19172 19173 19174 19175 19176 19177 19178 19179 19180 19181 19182 19183 19184 19185 19186 19187 19188 19189 19190 19191 19192 19193 19194 19195 19196 19197 19198 19199 19200 19201 19202 19203 19204 19205 19206 19207 19208 19209 19210 19211 19212 19213 19214 19215 19216 19217 19218 19219 19220 19221 19222 19223 19224 19225 19226 19227 19228 19229 19230 19231 19232 19233 19234 19235 19236 19237 19238 19239 19240 19241 19242 19243 19244 19245 19246 19247 19248 19249 19250 19251 19252 19253 19254 19255 19256 19257 19258 19259 19260 19261 19262 19263 19264 19265 19266 19267 19268 19269 19270 19271 19272 19273 19274 19275 19276 19277 19278 19279 19280 19281 19282 19283 19284 19285 19286 19287 19288 19289 19290 19291 19292 19293 19294 19295 19296 19297 19298 19299 19300 19301 19302 19303 19304 19305 19306 19307 19308 19309 19310 19311 19312 19313 19314 19315 19316 19317 19318 19319 19320 19321 19322 19323 19324 19325 19326 19327 19328 19329 19330 19331 19332 19333 19334 19335 19336 19337 19338 19339 19340 19341 19342 19343 19344 19345 19346 19347 19348 19349 19350 19351 19352 19353 19354 19355 19356 19357 19358 19359 19360 19361 19362 19363 19364 19365 19366 19367 19368 19369 19370 19371 19372 19373 19374 19375 19376 19377 19378 19379 19380 19381 19382 19383 19384 19385 19386 19387 19388 19389 19390 19391 19392 19393 19394 19395 19396 19397 19398 19399 19400 19401 19402 19403 19404 19405 19406 19407 19408 19409 19410 19411 19412 19413 19414 19415 19416 19417 19418 19419 19420 19421 19422 19423 19424 19425 19426 19427 19428 19429 19430 19431 19432 19433 19434 19435 19436 19437 19438 19439 19440 19441 19442 19443 19444 19445 19446 19447 19448 19449 19450 19451 19452 19453 19454 19455 19456 19457 19458 19459 19460 19461 19462 19463 19464 19465 19466 19467 19468 19469 19470 19471 19472 19473 19474 19475 19476 19477 19478 19479 19480 19481 19482 19483 19484 19485 19486 19487 19488 19489 19490 19491 19492 19493 19494 19495 19496 19497 19498 19499 19500 19501 19502 19503 19504 19505 19506 19507 19508 19509 19510 19511 19512 19513 19514 19515 19516 19517 19518 19519 19520 19521 19522 19523 19524 19525 19526 19527 19528 19529 19530 19531 19532 19533 19534 19535 19536 19537 19538 19539 19540 19541 19542 19543 19544 19545 19546 19547 19548 19549 19550 19551 19552 19553 19554 19555 19556 19557 19558 19559 19560 19561 19562 19563 19564 19565 19566 19567 19568 19569 19570 19571 19572 19573 19574 19575 19576 19577 19578 19579 19580 19581 19582 19583 19584 19585 19586 19587 19588 19589 19590 19591 19592 19593 19594 19595 19596 19597 19598 19599 19600 19601 19602 19603 19604 19605 19606 19607 19608 19609 19610 19611 19612 19613 19614 19615 19616 19617 19618 19619 19620 19621 19622 19623 19624 19625 19626 19627 19628 19629 19630 19631 19632 19633 19634 19635 19636 19637 19638 19639 19640 19641 19642 19643 19644 19645 19646 19647 19648 19649 19650 19651 19652 19653 19654 19655 19656 19657 19658 19659 19660 19661 19662 19663 19664 19665 19666 19667 19668 19669 19670 19671 19672 19673 19674 19675 19676 19677 19678 19679 19680 19681 19682 19683 19684 19685 19686 19687 19688 19689 19690 19691 19692 19693 19694 19695 19696 19697 19698 19699 19700 19701 19702 19703 19704 19705 19706 19707 19708 19709 19710 19711 19712 19713 19714 19715 19716 19717 19718 19719 19720 19721 19722 19723 19724 19725 19726 19727 19728 19729 19730 19731 19732 19733 19734 19735 19736 19737 19738 19739 19740 19741 19742 19743 19744 19745 19746 19747 19748 19749 19750 19751 19752 19753 19754 19755 19756 19757 19758 19759 19760 19761 19762 19763 19764 19765 19766 19767 19768 19769 19770 19771 19772 19773 19774 19775 19776 19777 19778 19779 19780 19781 19782 19783 19784 19785 19786 19787 19788 19789 19790 19791 19792 19793 19794 19795 19796 19797 19798 19799 19800 19801 19802 19803 19804 19805 19806 19807 19808 19809 19810 19811 19812 19813 19814 19815 19816 19817 19818 19819 19820 19821 19822 19823 19824 19825 19826 19827 19828 19829 19830 19831 19832 19833 19834 19835 19836 19837 19838 19839 19840 19841 19842 19843 19844 19845 19846 19847 19848 19849 19850 19851 19852 19853 19854 19855 19856 19857 19858 19859 19860 19861 19862 19863 19864 19865 19866 19867 19868 19869 19870 19871 19872 19873 19874 19875 19876 19877 19878 19879 19880 19881 19882 19883 19884 19885 19886 19887 19888 19889 19890 19891 19892 19893 19894 19895 19896 19897 19898 19899 19900 19901 19902 19903 19904 19905 19906 19907 19908 19909 19910 19911 19912 19913 19914 19915 19916 19917 19918 19919 19920 19921 19922 19923 19924 19925 19926 19927 19928 19929 19930 19931 19932 19933 19934 19935 19936 19937 19938 19939 19940 19941 19942 19943 19944 19945 19946 19947 19948 19949 19950 19951 19952 19953 19954 19955 19956 19957 19958 19959 19960 19961 19962 19963 19964 19965 19966 19967 19968 19969 19970 19971 19972 19973 19974 19975 19976 19977 19978 19979 19980 19981 19982 19983 19984 19985 19986 19987 19988 19989 19990 19991 19992 19993 19994 19995 19996 19997 19998 19999 20000 20001 20002 20003 20004 20005 20006 20007 20008 20009 20010 20011 20012 20013 20014 20015 20016 20017 20018 20019 20020 20021 20022 20023 20024 20025 20026 20027 20028 20029 20030 20031 20032 20033 20034 20035 20036 20037 20038 20039 20040 20041 20042 20043 20044 20045 20046 20047 20048 20049 20050 20051 20052 20053 20054 20055 20056 20057 20058 20059 20060 20061 20062 20063 20064 20065 20066 20067 20068 20069 20070 20071 20072 20073 20074 20075 20076 20077 20078 20079 20080 20081 20082 20083 20084 20085 20086 20087 20088 20089 20090 20091 20092 20093 20094 20095 20096 20097 20098 20099 20100 20101 20102 20103 20104 20105 20106 20107 20108 20109 20110 20111 20112 20113 20114 20115 20116 20117 20118 20119 20120 20121 20122 20123 20124 20125 20126 20127 20128 20129 20130 20131 20132 20133 20134 20135 20136 20137 20138 20139 20140 20141 20142 20143 20144 20145 20146 20147 20148 20149 20150 20151 20152 20153 20154 20155 20156 20157 20158 20159 20160 20161 20162 20163 20164 20165 20166 20167 20168 20169 20170 20171 20172 20173 20174 20175 20176 20177 20178 20179 20180 20181 20182 20183 20184 20185 20186 20187 20188 20189 20190 20191 20192 20193 20194 20195 20196 20197 20198 20199 20200 20201 20202 20203 20204 20205 20206 20207 20208 20209 20210 20211 20212 20213 20214 20215 20216 20217 20218 20219 20220 20221 20222 20223 20224 20225 20226 20227 20228 20229 20230 20231 20232 20233 20234 20235 20236 20237 20238 20239 20240 20241 20242 20243 20244 20245 20246 20247 20248 20249 20250 20251 20252 20253 20254 20255 20256 20257 20258 20259 20260 20261 20262 20263 20264 20265 20266 20267 20268 20269 20270 20271 20272 20273 20274 20275 20276 20277 20278 20279 20280 20281 20282 20283 20284 20285 20286 20287 20288 20289 20290 20291 20292 20293 20294 20295 20296 20297 20298 20299 20300 20301 20302 20303 20304 20305 20306 20307 20308 20309 20310 20311 20312 20313 20314 20315 20316 20317 20318 20319 20320 20321 20322 20323 20324 20325 20326 20327 20328 20329 20330 20331 20332 20333 20334 20335 20336 20337 20338 20339 20340 20341 20342 20343 20344 20345 20346 20347 20348 20349 20350 20351 20352 20353 20354 20355 20356 20357 20358 20359 20360 20361 20362 20363 20364 20365 20366 20367 20368 20369 20370 20371 20372 20373 20374 20375 20376 20377 20378 20379 20380 20381 20382 20383 20384 20385 20386 20387 20388 20389 20390 20391 20392 20393 20394 20395 20396 20397 20398 20399 20400 20401 20402 20403 20404 20405 20406 20407 20408 20409 20410 20411 20412 20413 20414 20415 20416 20417 20418 20419 20420 20421 20422 20423 20424 20425 20426 20427 20428 20429 20430 20431 20432 20433 20434 20435 20436 20437 20438 20439 20440 20441 20442 20443 20444 20445 20446 20447 20448 20449 20450 20451 20452 20453 20454 20455 20456 20457 20458 20459 20460 20461 20462 20463 20464 20465 20466 20467 20468 20469 20470 20471 20472 20473 20474 20475 20476 20477 20478 20479 20480 20481 20482 20483 20484 20485 20486 20487 20488 20489 20490 20491 20492 20493 20494 20495 20496 20497 20498 20499 20500 20501 20502 20503 20504 20505 20506 20507 20508 20509 20510 20511 20512 20513 20514 20515 20516 20517 20518 20519 20520 20521 20522 20523 20524 20525 20526 20527 20528 20529 20530 20531 20532 20533 20534 20535 20536 20537 20538 20539 20540 20541 20542 20543 20544 20545 20546 20547 20548 20549 20550 20551 20552 20553 20554 20555 20556 20557 20558 20559 20560 20561 20562 20563 20564 20565 20566 20567 20568 20569 20570 20571 20572 20573 20574 20575 20576 20577 20578 20579 20580 20581 20582 20583 20584 20585 20586 20587 20588 20589 20590 20591 20592 20593 20594 20595 20596 20597 20598 20599 20600 20601 20602 20603 20604 20605 20606 20607 20608 20609 20610 20611 20612 20613 20614 20615 20616 20617 20618 20619 20620 20621 20622 20623 20624 20625 20626 20627 20628 20629 20630 20631 20632 20633 20634 20635 20636 20637 20638 20639 20640 20641 20642 20643 20644 20645 20646 20647 20648 20649 20650 20651 20652 20653 20654 20655 20656 20657 20658 20659 20660 20661 20662 20663 20664 20665 20666 20667 20668 20669 20670 20671 20672 20673 20674 20675 20676 20677 20678 20679 20680 20681 20682 20683 20684 20685 20686 20687 20688 20689 20690 20691 20692 20693 20694 20695 20696 20697 20698 20699 20700 20701 20702 20703 20704 20705 20706 20707 20708 20709 20710 20711 20712 20713 20714 20715 20716 20717 20718 20719 20720 20721 20722 20723 20724 20725 20726 20727 20728 20729 20730 20731 20732 20733 20734 20735 20736 20737 20738 20739 20740 20741 20742 20743 20744 20745 20746 20747 20748 20749 20750 20751 20752 20753 20754 20755 20756 20757 20758 20759 20760 20761 20762 20763 20764 20765 20766 20767 20768 20769 20770 20771 20772 20773 20774 20775 20776 20777 20778 20779 20780 20781 20782 20783 20784 20785 20786 20787 20788 20789 20790 20791 20792 20793 20794 20795 20796 20797 20798 20799 20800 20801 20802 20803 20804 20805 20806 20807 20808 20809 20810 20811 20812 20813 20814 20815 20816 20817 20818 20819 20820 20821 20822 20823 20824 20825 20826 20827 20828 20829 20830 20831 20832 20833 20834 20835 20836 20837 20838 20839 20840 20841 20842 20843 20844 20845 20846 20847 20848 20849 20850 20851 20852 20853 20854 20855 20856 20857 20858 20859 20860 20861 20862 20863 20864 20865 20866 20867 20868 20869 20870 20871 20872 20873 20874 20875 20876 20877 20878 20879 20880 20881 20882 20883 20884 20885 20886 20887 20888 20889 20890 20891 20892 20893 20894 20895 20896 20897 20898 20899 20900 20901 20902 20903 20904 20905 20906 20907 20908 20909 20910 20911 20912 20913 20914 20915 20916 20917 20918 20919 20920 20921 20922 20923 20924 20925 20926 20927 20928 20929 20930 20931 20932 20933 20934 20935 20936 20937 20938 20939 20940 20941 20942 20943 20944 20945 20946 20947 20948 20949 20950 20951 20952 20953 20954 20955 20956 20957 20958 20959 20960 20961 20962 20963 20964 20965 20966 20967 20968 20969 20970 20971 20972 20973 20974 20975 20976 20977 20978 20979 20980 20981 20982 20983 20984 20985 20986 20987 20988 20989 20990 20991 20992 20993 20994 20995 20996 20997 20998 20999 21000 21001 21002 21003 21004 21005 21006 21007 21008 21009 21010 21011 21012 21013 21014 21015 21016 21017 21018 21019 21020 21021 21022 21023 21024 21025 21026 21027 21028 21029 21030 21031 21032 21033 21034 21035 21036 21037 21038 21039 21040 21041 21042 21043 21044 21045 21046 21047 21048 21049 21050 21051 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* DCM/DFA Reporting And Trafficking API
*
* Manages your DoubleClick Campaign Manager ad campaigns and reports.
*
* @example
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* @namespace dfareporting
* @type {Function}
* @version v2.7
* @variation v2.7
* @param {object=} options Options for Dfareporting
*/
function Dfareporting(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.accountActiveAdSummaries = {
/**
* dfareporting.accountActiveAdSummaries.get
*
* @desc Gets the account's active ad summary by account ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Account ID.
* summaryAccountId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.accountActiveAdSummaries.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.accountActiveAdSummaries.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {string} params.summaryAccountId Account ID.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/accountActiveAdSummaries/{summaryAccountId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'summaryAccountId'],
pathParams: ['profileId', 'summaryAccountId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.accountPermissionGroups = {
/**
* dfareporting.accountPermissionGroups.get
*
* @desc Gets one account permission group by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Account permission group ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.accountPermissionGroups.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.accountPermissionGroups.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Account permission group ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/accountPermissionGroups/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.accountPermissionGroups.list
*
* @desc Retrieves the list of account permission groups.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.accountPermissionGroups.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.accountPermissionGroups.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/accountPermissionGroups',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.accountPermissions = {
/**
* dfareporting.accountPermissions.get
*
* @desc Gets one account permission by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Account permission ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.accountPermissions.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.accountPermissions.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Account permission ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/accountPermissions/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.accountPermissions.list
*
* @desc Retrieves the list of account permissions.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.accountPermissions.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.accountPermissions.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/accountPermissions',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.accountUserProfiles = {
/**
* dfareporting.accountUserProfiles.get
*
* @desc Gets one account user profile by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // User profile ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.accountUserProfiles.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.accountUserProfiles.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id User profile ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/accountUserProfiles/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.accountUserProfiles.insert
*
* @desc Inserts a new account user profile.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.accountUserProfiles.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.accountUserProfiles.insert
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).AccountUserProfile} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/accountUserProfiles',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.accountUserProfiles.list
*
* @desc Retrieves a list of account user profiles, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var accountUserProfilesPage = response['accountUserProfiles'];
* if (!accountUserProfilesPage) {
* return;
* }
* for (var i = 0; i < accountUserProfilesPage.length; i++) {
* // TODO: Change code below to process each resource in `accountUserProfilesPage`:
* console.log(JSON.stringify(accountUserProfilesPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.accountUserProfiles.list(request, handlePage);
* }
* };
*
* dfareporting.accountUserProfiles.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.accountUserProfiles.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {boolean=} params.active Select only active user profiles.
* @param {string=} params.ids Select only user profiles with these IDs.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for objects by name, ID or email. Wildcards (*) are allowed. For example, "user profile*2015" will return objects with names like "user profile June 2015", "user profile April 2015", or simply "user profile 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "user profile" will match objects with name "my user profile", "user profile 2015", or simply "user profile".
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {string=} params.subaccountId Select only user profiles with the specified subaccount ID.
* @param {string=} params.userRoleId Select only user profiles with the specified user role ID.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/accountUserProfiles',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.accountUserProfiles.patch
*
* @desc Updates an existing account user profile. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // User profile ID.
* id: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. Only these properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.accountUserProfiles.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.accountUserProfiles.patch
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id User profile ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).AccountUserProfile} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/accountUserProfiles',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.accountUserProfiles.update
*
* @desc Updates an existing account user profile.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. All existing properties
* // will be replaced.
* },
*
* auth: authClient
* };
*
* dfareporting.accountUserProfiles.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.accountUserProfiles.update
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).AccountUserProfile} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/accountUserProfiles',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.accounts = {
/**
* dfareporting.accounts.get
*
* @desc Gets one account by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Account ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.accounts.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.accounts.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Account ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/accounts/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.accounts.list
*
* @desc Retrieves the list of accounts, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var accountsPage = response['accounts'];
* if (!accountsPage) {
* return;
* }
* for (var i = 0; i < accountsPage.length; i++) {
* // TODO: Change code below to process each resource in `accountsPage`:
* console.log(JSON.stringify(accountsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.accounts.list(request, handlePage);
* }
* };
*
* dfareporting.accounts.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.accounts.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {boolean=} params.active Select only active accounts. Don't set this field to select both active and non-active accounts.
* @param {string=} params.ids Select only accounts with these IDs.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, "account*2015" will return objects with names like "account June 2015", "account April 2015", or simply "account 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "account" will match objects with name "my account", "account 2015", or simply "account".
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/accounts',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.accounts.patch
*
* @desc Updates an existing account. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Account ID.
* id: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. Only these properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.accounts.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.accounts.patch
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Account ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).Account} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/accounts',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.accounts.update
*
* @desc Updates an existing account.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. All existing properties
* // will be replaced.
* },
*
* auth: authClient
* };
*
* dfareporting.accounts.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.accounts.update
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).Account} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/accounts',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.ads = {
/**
* dfareporting.ads.get
*
* @desc Gets one ad by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Ad ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.ads.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.ads.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Ad ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/ads/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.ads.insert
*
* @desc Inserts a new ad.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.ads.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.ads.insert
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).Ad} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/ads',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.ads.list
*
* @desc Retrieves a list of ads, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var adsPage = response['ads'];
* if (!adsPage) {
* return;
* }
* for (var i = 0; i < adsPage.length; i++) {
* // TODO: Change code below to process each resource in `adsPage`:
* console.log(JSON.stringify(adsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.ads.list(request, handlePage);
* }
* };
*
* dfareporting.ads.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.ads.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {boolean=} params.active Select only active ads.
* @param {string=} params.advertiserId Select only ads with this advertiser ID.
* @param {boolean=} params.archived Select only archived ads.
* @param {string=} params.audienceSegmentIds Select only ads with these audience segment IDs.
* @param {string=} params.campaignIds Select only ads with these campaign IDs.
* @param {string=} params.compatibility Select default ads with the specified compatibility. Applicable when type is AD_SERVING_DEFAULT_AD. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop or on mobile devices for regular or interstitial ads, respectively. APP and APP_INTERSTITIAL are for rendering in mobile apps. IN_STREAM_VIDEO refers to rendering an in-stream video ads developed with the VAST standard.
* @param {string=} params.creativeIds Select only ads with these creative IDs assigned.
* @param {string=} params.creativeOptimizationConfigurationIds Select only ads with these creative optimization configuration IDs.
* @param {boolean=} params.dynamicClickTracker Select only dynamic click trackers. Applicable when type is AD_SERVING_CLICK_TRACKER. If true, select dynamic click trackers. If false, select static click trackers. Leave unset to select both.
* @param {string=} params.ids Select only ads with these IDs.
* @param {string=} params.landingPageIds Select only ads with these landing page IDs.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.overriddenEventTagId Select only ads with this event tag override ID.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string=} params.placementIds Select only ads with these placement IDs assigned.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.remarketingListIds Select only ads whose list targeting expression use these remarketing list IDs.
* @param {string=} params.searchString Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, "ad*2015" will return objects with names like "ad June 2015", "ad April 2015", or simply "ad 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "ad" will match objects with name "my ad", "ad 2015", or simply "ad".
* @param {string=} params.sizeIds Select only ads with these size IDs.
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {boolean=} params.sslCompliant Select only ads that are SSL-compliant.
* @param {boolean=} params.sslRequired Select only ads that require SSL.
* @param {string=} params.type Select only ads with these types.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/ads',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.ads.patch
*
* @desc Updates an existing ad. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Ad ID.
* id: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. Only these properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.ads.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.ads.patch
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Ad ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).Ad} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/ads',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.ads.update
*
* @desc Updates an existing ad.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. All existing properties
* // will be replaced.
* },
*
* auth: authClient
* };
*
* dfareporting.ads.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.ads.update
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).Ad} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/ads',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.advertiserGroups = {
/**
* dfareporting.advertiserGroups.delete
*
* @desc Deletes an existing advertiser group.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Advertiser group ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.advertiserGroups.delete(request, function(err) {
* if (err) {
* console.log(err);
* return;
* }
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.advertiserGroups.delete
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Advertiser group ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/advertiserGroups/{id}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.advertiserGroups.get
*
* @desc Gets one advertiser group by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Advertiser group ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.advertiserGroups.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.advertiserGroups.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Advertiser group ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/advertiserGroups/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.advertiserGroups.insert
*
* @desc Inserts a new advertiser group.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.advertiserGroups.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.advertiserGroups.insert
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).AdvertiserGroup} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/advertiserGroups',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.advertiserGroups.list
*
* @desc Retrieves a list of advertiser groups, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var advertiserGroupsPage = response['advertiserGroups'];
* if (!advertiserGroupsPage) {
* return;
* }
* for (var i = 0; i < advertiserGroupsPage.length; i++) {
* // TODO: Change code below to process each resource in `advertiserGroupsPage`:
* console.log(JSON.stringify(advertiserGroupsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.advertiserGroups.list(request, handlePage);
* }
* };
*
* dfareporting.advertiserGroups.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.advertiserGroups.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string=} params.ids Select only advertiser groups with these IDs.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, "advertiser*2015" will return objects with names like "advertiser group June 2015", "advertiser group April 2015", or simply "advertiser group 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "advertisergroup" will match objects with name "my advertisergroup", "advertisergroup 2015", or simply "advertisergroup".
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/advertiserGroups',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.advertiserGroups.patch
*
* @desc Updates an existing advertiser group. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Advertiser group ID.
* id: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. Only these properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.advertiserGroups.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.advertiserGroups.patch
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Advertiser group ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).AdvertiserGroup} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/advertiserGroups',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.advertiserGroups.update
*
* @desc Updates an existing advertiser group.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. All existing properties
* // will be replaced.
* },
*
* auth: authClient
* };
*
* dfareporting.advertiserGroups.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.advertiserGroups.update
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).AdvertiserGroup} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/advertiserGroups',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.advertisers = {
/**
* dfareporting.advertisers.get
*
* @desc Gets one advertiser by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Advertiser ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.advertisers.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.advertisers.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Advertiser ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/advertisers/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.advertisers.insert
*
* @desc Inserts a new advertiser.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.advertisers.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.advertisers.insert
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).Advertiser} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/advertisers',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.advertisers.list
*
* @desc Retrieves a list of advertisers, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var advertisersPage = response['advertisers'];
* if (!advertisersPage) {
* return;
* }
* for (var i = 0; i < advertisersPage.length; i++) {
* // TODO: Change code below to process each resource in `advertisersPage`:
* console.log(JSON.stringify(advertisersPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.advertisers.list(request, handlePage);
* }
* };
*
* dfareporting.advertisers.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.advertisers.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string=} params.advertiserGroupIds Select only advertisers with these advertiser group IDs.
* @param {string=} params.floodlightConfigurationIds Select only advertisers with these floodlight configuration IDs.
* @param {string=} params.ids Select only advertisers with these IDs.
* @param {boolean=} params.includeAdvertisersWithoutGroupsOnly Select only advertisers which do not belong to any advertiser group.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {boolean=} params.onlyParent Select only advertisers which use another advertiser's floodlight configuration.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, "advertiser*2015" will return objects with names like "advertiser June 2015", "advertiser April 2015", or simply "advertiser 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "advertiser" will match objects with name "my advertiser", "advertiser 2015", or simply "advertiser".
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {string=} params.status Select only advertisers with the specified status.
* @param {string=} params.subaccountId Select only advertisers with these subaccount IDs.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/advertisers',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.advertisers.patch
*
* @desc Updates an existing advertiser. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Advertiser ID.
* id: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. Only these properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.advertisers.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.advertisers.patch
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Advertiser ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).Advertiser} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/advertisers',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.advertisers.update
*
* @desc Updates an existing advertiser.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. All existing properties
* // will be replaced.
* },
*
* auth: authClient
* };
*
* dfareporting.advertisers.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.advertisers.update
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).Advertiser} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/advertisers',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.browsers = {
/**
* dfareporting.browsers.list
*
* @desc Retrieves a list of browsers.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.browsers.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.browsers.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/browsers',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.campaignCreativeAssociations = {
/**
* dfareporting.campaignCreativeAssociations.insert
*
* @desc Associates a creative with the specified campaign. This method creates a default ad with dimensions matching the creative in the campaign if such a default ad does not exist already.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Campaign ID in this association.
* campaignId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.campaignCreativeAssociations.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.campaignCreativeAssociations.insert
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.campaignId Campaign ID in this association.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).CampaignCreativeAssociation} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/campaigns/{campaignId}/campaignCreativeAssociations',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId', 'campaignId'],
pathParams: ['campaignId', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.campaignCreativeAssociations.list
*
* @desc Retrieves the list of creative IDs associated with the specified campaign. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Campaign ID in this association.
* campaignId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var campaignCreativeAssociationsPage = response['campaignCreativeAssociations'];
* if (!campaignCreativeAssociationsPage) {
* return;
* }
* for (var i = 0; i < campaignCreativeAssociationsPage.length; i++) {
* // TODO: Change code below to process each resource in `campaignCreativeAssociationsPage`:
* console.log(JSON.stringify(campaignCreativeAssociationsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.campaignCreativeAssociations.list(request, handlePage);
* }
* };
*
* dfareporting.campaignCreativeAssociations.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.campaignCreativeAssociations.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.campaignId Campaign ID in this association.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/campaigns/{campaignId}/campaignCreativeAssociations',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'campaignId'],
pathParams: ['campaignId', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.campaigns = {
/**
* dfareporting.campaigns.get
*
* @desc Gets one campaign by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Campaign ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.campaigns.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.campaigns.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Campaign ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/campaigns/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.campaigns.insert
*
* @desc Inserts a new campaign.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Default landing page name for this new campaign. Must be less than 256 characters long.
* defaultLandingPageName: '', // TODO: Update placeholder value.
*
* // Default landing page URL for this new campaign.
* defaultLandingPageUrl: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.campaigns.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.campaigns.insert
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.defaultLandingPageName Default landing page name for this new campaign. Must be less than 256 characters long.
* @param {string} params.defaultLandingPageUrl Default landing page URL for this new campaign.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).Campaign} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/campaigns',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId', 'defaultLandingPageName', 'defaultLandingPageUrl'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.campaigns.list
*
* @desc Retrieves a list of campaigns, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var campaignsPage = response['campaigns'];
* if (!campaignsPage) {
* return;
* }
* for (var i = 0; i < campaignsPage.length; i++) {
* // TODO: Change code below to process each resource in `campaignsPage`:
* console.log(JSON.stringify(campaignsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.campaigns.list(request, handlePage);
* }
* };
*
* dfareporting.campaigns.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.campaigns.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string=} params.advertiserGroupIds Select only campaigns whose advertisers belong to these advertiser groups.
* @param {string=} params.advertiserIds Select only campaigns that belong to these advertisers.
* @param {boolean=} params.archived Select only archived campaigns. Don't set this field to select both archived and non-archived campaigns.
* @param {boolean=} params.atLeastOneOptimizationActivity Select only campaigns that have at least one optimization activity.
* @param {string=} params.excludedIds Exclude campaigns with these IDs.
* @param {string=} params.ids Select only campaigns with these IDs.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.overriddenEventTagId Select only campaigns that have overridden this event tag ID.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for campaigns by name or ID. Wildcards (*) are allowed. For example, "campaign*2015" will return campaigns with names like "campaign June 2015", "campaign April 2015", or simply "campaign 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "campaign" will match campaigns with name "my campaign", "campaign 2015", or simply "campaign".
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {string=} params.subaccountId Select only campaigns that belong to this subaccount.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/campaigns',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.campaigns.patch
*
* @desc Updates an existing campaign. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Campaign ID.
* id: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. Only these properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.campaigns.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.campaigns.patch
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Campaign ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).Campaign} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/campaigns',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.campaigns.update
*
* @desc Updates an existing campaign.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. All existing properties
* // will be replaced.
* },
*
* auth: authClient
* };
*
* dfareporting.campaigns.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.campaigns.update
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).Campaign} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/campaigns',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.changeLogs = {
/**
* dfareporting.changeLogs.get
*
* @desc Gets one change log by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Change log ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.changeLogs.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.changeLogs.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Change log ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/changeLogs/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.changeLogs.list
*
* @desc Retrieves a list of change logs. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var changeLogsPage = response['changeLogs'];
* if (!changeLogsPage) {
* return;
* }
* for (var i = 0; i < changeLogsPage.length; i++) {
* // TODO: Change code below to process each resource in `changeLogsPage`:
* console.log(JSON.stringify(changeLogsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.changeLogs.list(request, handlePage);
* }
* };
*
* dfareporting.changeLogs.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.changeLogs.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string=} params.action Select only change logs with the specified action.
* @param {string=} params.ids Select only change logs with these IDs.
* @param {string=} params.maxChangeTime Select only change logs whose change time is before the specified maxChangeTime.The time should be formatted as an RFC3339 date/time string. For example, for 10:54 PM on July 18th, 2015, in the America/New York time zone, the format is "2015-07-18T22:54:00-04:00". In other words, the year, month, day, the letter T, the hour (24-hour clock system), minute, second, and then the time zone offset.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.minChangeTime Select only change logs whose change time is before the specified minChangeTime.The time should be formatted as an RFC3339 date/time string. For example, for 10:54 PM on July 18th, 2015, in the America/New York time zone, the format is "2015-07-18T22:54:00-04:00". In other words, the year, month, day, the letter T, the hour (24-hour clock system), minute, second, and then the time zone offset.
* @param {string=} params.objectIds Select only change logs with these object IDs.
* @param {string=} params.objectType Select only change logs with the specified object type.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Select only change logs whose object ID, user name, old or new values match the search string.
* @param {string=} params.userProfileIds Select only change logs with these user profile IDs.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/changeLogs',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.cities = {
/**
* dfareporting.cities.list
*
* @desc Retrieves a list of cities, possibly filtered.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.cities.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.cities.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string=} params.countryDartIds Select only cities from these countries.
* @param {string=} params.dartIds Select only cities with these DART IDs.
* @param {string=} params.namePrefix Select only cities with names starting with this prefix.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.regionDartIds Select only cities from these regions.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/cities',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.connectionTypes = {
/**
* dfareporting.connectionTypes.get
*
* @desc Gets one connection type by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Connection type ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.connectionTypes.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.connectionTypes.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Connection type ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/connectionTypes/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.connectionTypes.list
*
* @desc Retrieves a list of connection types.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.connectionTypes.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.connectionTypes.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/connectionTypes',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.contentCategories = {
/**
* dfareporting.contentCategories.delete
*
* @desc Deletes an existing content category.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Content category ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.contentCategories.delete(request, function(err) {
* if (err) {
* console.log(err);
* return;
* }
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.contentCategories.delete
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Content category ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/contentCategories/{id}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.contentCategories.get
*
* @desc Gets one content category by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Content category ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.contentCategories.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.contentCategories.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Content category ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/contentCategories/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.contentCategories.insert
*
* @desc Inserts a new content category.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.contentCategories.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.contentCategories.insert
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).ContentCategory} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/contentCategories',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.contentCategories.list
*
* @desc Retrieves a list of content categories, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var contentCategoriesPage = response['contentCategories'];
* if (!contentCategoriesPage) {
* return;
* }
* for (var i = 0; i < contentCategoriesPage.length; i++) {
* // TODO: Change code below to process each resource in `contentCategoriesPage`:
* console.log(JSON.stringify(contentCategoriesPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.contentCategories.list(request, handlePage);
* }
* };
*
* dfareporting.contentCategories.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.contentCategories.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string=} params.ids Select only content categories with these IDs.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, "contentcategory*2015" will return objects with names like "contentcategory June 2015", "contentcategory April 2015", or simply "contentcategory 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "contentcategory" will match objects with name "my contentcategory", "contentcategory 2015", or simply "contentcategory".
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/contentCategories',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.contentCategories.patch
*
* @desc Updates an existing content category. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Content category ID.
* id: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. Only these properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.contentCategories.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.contentCategories.patch
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Content category ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).ContentCategory} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/contentCategories',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.contentCategories.update
*
* @desc Updates an existing content category.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. All existing properties
* // will be replaced.
* },
*
* auth: authClient
* };
*
* dfareporting.contentCategories.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.contentCategories.update
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).ContentCategory} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/contentCategories',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.conversions = {
/**
* dfareporting.conversions.batchinsert
*
* @desc Inserts conversions.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.conversions.batchinsert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/ddmconversions'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.conversions.batchinsert
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).ConversionsBatchInsertRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
batchinsert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/conversions/batchinsert',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.countries = {
/**
* dfareporting.countries.get
*
* @desc Gets one country by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Country DART ID.
* dartId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.countries.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.countries.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.dartId Country DART ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/countries/{dartId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'dartId'],
pathParams: ['dartId', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.countries.list
*
* @desc Retrieves a list of countries.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.countries.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.countries.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/countries',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.creativeAssets = {
/**
* dfareporting.creativeAssets.insert
*
* @desc Inserts a new creative asset.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Advertiser ID of this creative. This is a required field.
* advertiserId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* media: {
* // TODO: Add desired media content for upload. See
* // https://github.com/google/google-api-nodejs-client#media-uploads
* mimeType: '', // See https://www.w3.org/Protocols/rfc1341/4_Content-Type.html
* body: {}
* },
*
* auth: authClient
* };
*
* dfareporting.creativeAssets.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creativeAssets.insert
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.advertiserId Advertiser ID of this creative. This is a required field.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} params.resource Media resource metadata
* @param {object} params.media Media object
* @param {string} params.media.mimeType Media mime-type
* @param {string|object} params.media.body Media body contents
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/creativeAssets/{advertiserId}/creativeAssets',
method: 'POST'
}, options),
params: params,
mediaUrl: 'https://www.googleapis.com/upload/dfareporting/v2.7/userprofiles/{profileId}/creativeAssets/{advertiserId}/creativeAssets',
requiredParams: ['profileId', 'advertiserId'],
pathParams: ['advertiserId', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.creativeFieldValues = {
/**
* dfareporting.creativeFieldValues.delete
*
* @desc Deletes an existing creative field value.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Creative field ID for this creative field value.
* creativeFieldId: '0', // TODO: Update placeholder value.
*
* // Creative Field Value ID
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.creativeFieldValues.delete(request, function(err) {
* if (err) {
* console.log(err);
* return;
* }
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creativeFieldValues.delete
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.creativeFieldId Creative field ID for this creative field value.
* @param {string} params.id Creative Field Value ID
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues/{id}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['profileId', 'creativeFieldId', 'id'],
pathParams: ['creativeFieldId', 'id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.creativeFieldValues.get
*
* @desc Gets one creative field value by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Creative field ID for this creative field value.
* creativeFieldId: '0', // TODO: Update placeholder value.
*
* // Creative Field Value ID
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.creativeFieldValues.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creativeFieldValues.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.creativeFieldId Creative field ID for this creative field value.
* @param {string} params.id Creative Field Value ID
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'creativeFieldId', 'id'],
pathParams: ['creativeFieldId', 'id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.creativeFieldValues.insert
*
* @desc Inserts a new creative field value.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Creative field ID for this creative field value.
* creativeFieldId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.creativeFieldValues.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creativeFieldValues.insert
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.creativeFieldId Creative field ID for this creative field value.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).CreativeFieldValue} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId', 'creativeFieldId'],
pathParams: ['creativeFieldId', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.creativeFieldValues.list
*
* @desc Retrieves a list of creative field values, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Creative field ID for this creative field value.
* creativeFieldId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var creativeFieldValuesPage = response['creativeFieldValues'];
* if (!creativeFieldValuesPage) {
* return;
* }
* for (var i = 0; i < creativeFieldValuesPage.length; i++) {
* // TODO: Change code below to process each resource in `creativeFieldValuesPage`:
* console.log(JSON.stringify(creativeFieldValuesPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.creativeFieldValues.list(request, handlePage);
* }
* };
*
* dfareporting.creativeFieldValues.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creativeFieldValues.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.creativeFieldId Creative field ID for this creative field value.
* @param {string=} params.ids Select only creative field values with these IDs.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for creative field values by their values. Wildcards (e.g. *) are not allowed.
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'creativeFieldId'],
pathParams: ['creativeFieldId', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.creativeFieldValues.patch
*
* @desc Updates an existing creative field value. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Creative field ID for this creative field value.
* creativeFieldId: '0', // TODO: Update placeholder value.
*
* // Creative Field Value ID
* id: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. Only these properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.creativeFieldValues.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creativeFieldValues.patch
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.creativeFieldId Creative field ID for this creative field value.
* @param {string} params.id Creative Field Value ID
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).CreativeFieldValue} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'creativeFieldId', 'id'],
pathParams: ['creativeFieldId', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.creativeFieldValues.update
*
* @desc Updates an existing creative field value.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Creative field ID for this creative field value.
* creativeFieldId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. All existing properties
* // will be replaced.
* },
*
* auth: authClient
* };
*
* dfareporting.creativeFieldValues.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creativeFieldValues.update
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.creativeFieldId Creative field ID for this creative field value.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).CreativeFieldValue} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId', 'creativeFieldId'],
pathParams: ['creativeFieldId', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.creativeFields = {
/**
* dfareporting.creativeFields.delete
*
* @desc Deletes an existing creative field.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Creative Field ID
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.creativeFields.delete(request, function(err) {
* if (err) {
* console.log(err);
* return;
* }
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creativeFields.delete
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Creative Field ID
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/creativeFields/{id}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.creativeFields.get
*
* @desc Gets one creative field by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Creative Field ID
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.creativeFields.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creativeFields.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Creative Field ID
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/creativeFields/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.creativeFields.insert
*
* @desc Inserts a new creative field.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.creativeFields.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creativeFields.insert
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).CreativeField} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/creativeFields',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.creativeFields.list
*
* @desc Retrieves a list of creative fields, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var creativeFieldsPage = response['creativeFields'];
* if (!creativeFieldsPage) {
* return;
* }
* for (var i = 0; i < creativeFieldsPage.length; i++) {
* // TODO: Change code below to process each resource in `creativeFieldsPage`:
* console.log(JSON.stringify(creativeFieldsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.creativeFields.list(request, handlePage);
* }
* };
*
* dfareporting.creativeFields.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creativeFields.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string=} params.advertiserIds Select only creative fields that belong to these advertisers.
* @param {string=} params.ids Select only creative fields with these IDs.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for creative fields by name or ID. Wildcards (*) are allowed. For example, "creativefield*2015" will return creative fields with names like "creativefield June 2015", "creativefield April 2015", or simply "creativefield 2015". Most of the searches also add wild-cards implicitly at the start and the end of the search string. For example, a search string of "creativefield" will match creative fields with the name "my creativefield", "creativefield 2015", or simply "creativefield".
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/creativeFields',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.creativeFields.patch
*
* @desc Updates an existing creative field. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Creative Field ID
* id: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. Only these properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.creativeFields.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creativeFields.patch
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Creative Field ID
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).CreativeField} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/creativeFields',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.creativeFields.update
*
* @desc Updates an existing creative field.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. All existing properties
* // will be replaced.
* },
*
* auth: authClient
* };
*
* dfareporting.creativeFields.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creativeFields.update
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).CreativeField} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/creativeFields',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.creativeGroups = {
/**
* dfareporting.creativeGroups.get
*
* @desc Gets one creative group by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Creative group ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.creativeGroups.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creativeGroups.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Creative group ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/creativeGroups/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.creativeGroups.insert
*
* @desc Inserts a new creative group.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.creativeGroups.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creativeGroups.insert
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).CreativeGroup} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/creativeGroups',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.creativeGroups.list
*
* @desc Retrieves a list of creative groups, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var creativeGroupsPage = response['creativeGroups'];
* if (!creativeGroupsPage) {
* return;
* }
* for (var i = 0; i < creativeGroupsPage.length; i++) {
* // TODO: Change code below to process each resource in `creativeGroupsPage`:
* console.log(JSON.stringify(creativeGroupsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.creativeGroups.list(request, handlePage);
* }
* };
*
* dfareporting.creativeGroups.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creativeGroups.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string=} params.advertiserIds Select only creative groups that belong to these advertisers.
* @param {integer=} params.groupNumber Select only creative groups that belong to this subgroup.
* @param {string=} params.ids Select only creative groups with these IDs.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for creative groups by name or ID. Wildcards (*) are allowed. For example, "creativegroup*2015" will return creative groups with names like "creativegroup June 2015", "creativegroup April 2015", or simply "creativegroup 2015". Most of the searches also add wild-cards implicitly at the start and the end of the search string. For example, a search string of "creativegroup" will match creative groups with the name "my creativegroup", "creativegroup 2015", or simply "creativegroup".
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/creativeGroups',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.creativeGroups.patch
*
* @desc Updates an existing creative group. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Creative group ID.
* id: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. Only these properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.creativeGroups.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creativeGroups.patch
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Creative group ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).CreativeGroup} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/creativeGroups',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.creativeGroups.update
*
* @desc Updates an existing creative group.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. All existing properties
* // will be replaced.
* },
*
* auth: authClient
* };
*
* dfareporting.creativeGroups.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creativeGroups.update
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).CreativeGroup} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/creativeGroups',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.creatives = {
/**
* dfareporting.creatives.get
*
* @desc Gets one creative by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Creative ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.creatives.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creatives.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Creative ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/creatives/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.creatives.insert
*
* @desc Inserts a new creative.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.creatives.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creatives.insert
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).Creative} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/creatives',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.creatives.list
*
* @desc Retrieves a list of creatives, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var creativesPage = response['creatives'];
* if (!creativesPage) {
* return;
* }
* for (var i = 0; i < creativesPage.length; i++) {
* // TODO: Change code below to process each resource in `creativesPage`:
* console.log(JSON.stringify(creativesPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.creatives.list(request, handlePage);
* }
* };
*
* dfareporting.creatives.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creatives.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {boolean=} params.active Select only active creatives. Leave blank to select active and inactive creatives.
* @param {string=} params.advertiserId Select only creatives with this advertiser ID.
* @param {boolean=} params.archived Select only archived creatives. Leave blank to select archived and unarchived creatives.
* @param {string=} params.campaignId Select only creatives with this campaign ID.
* @param {string=} params.companionCreativeIds Select only in-stream video creatives with these companion IDs.
* @param {string=} params.creativeFieldIds Select only creatives with these creative field IDs.
* @param {string=} params.ids Select only creatives with these IDs.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.renderingIds Select only creatives with these rendering IDs.
* @param {string=} params.searchString Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, "creative*2015" will return objects with names like "creative June 2015", "creative April 2015", or simply "creative 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "creative" will match objects with name "my creative", "creative 2015", or simply "creative".
* @param {string=} params.sizeIds Select only creatives with these size IDs.
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {string=} params.studioCreativeId Select only creatives corresponding to this Studio creative ID.
* @param {string=} params.types Select only creatives with these creative types.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/creatives',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.creatives.patch
*
* @desc Updates an existing creative. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Creative ID.
* id: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. Only these properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.creatives.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creatives.patch
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Creative ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).Creative} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/creatives',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.creatives.update
*
* @desc Updates an existing creative.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. All existing properties
* // will be replaced.
* },
*
* auth: authClient
* };
*
* dfareporting.creatives.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.creatives.update
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).Creative} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/creatives',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.dimensionValues = {
/**
* dfareporting.dimensionValues.query
*
* @desc Retrieves list of report dimension values for a list of filters.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // The DFA user profile ID.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var itemsPage = response['items'];
* if (!itemsPage) {
* return;
* }
* for (var i = 0; i < itemsPage.length; i++) {
* // TODO: Change code below to process each resource in `itemsPage`:
* console.log(JSON.stringify(itemsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.dimensionValues.query(request, handlePage);
* }
* };
*
* dfareporting.dimensionValues.query(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfareporting'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.dimensionValues.query
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken The value of the nextToken from the previous result page.
* @param {string} params.profileId The DFA user profile ID.
* @param {dfareporting(v2.7).DimensionValueRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
query: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/dimensionvalues/query',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.directorySiteContacts = {
/**
* dfareporting.directorySiteContacts.get
*
* @desc Gets one directory site contact by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Directory site contact ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.directorySiteContacts.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.directorySiteContacts.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Directory site contact ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/directorySiteContacts/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.directorySiteContacts.list
*
* @desc Retrieves a list of directory site contacts, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var directorySiteContactsPage = response['directorySiteContacts'];
* if (!directorySiteContactsPage) {
* return;
* }
* for (var i = 0; i < directorySiteContactsPage.length; i++) {
* // TODO: Change code below to process each resource in `directorySiteContactsPage`:
* console.log(JSON.stringify(directorySiteContactsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.directorySiteContacts.list(request, handlePage);
* }
* };
*
* dfareporting.directorySiteContacts.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.directorySiteContacts.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string=} params.directorySiteIds Select only directory site contacts with these directory site IDs. This is a required field.
* @param {string=} params.ids Select only directory site contacts with these IDs.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for objects by name, ID or email. Wildcards (*) are allowed. For example, "directory site contact*2015" will return objects with names like "directory site contact June 2015", "directory site contact April 2015", or simply "directory site contact 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "directory site contact" will match objects with name "my directory site contact", "directory site contact 2015", or simply "directory site contact".
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/directorySiteContacts',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.directorySites = {
/**
* dfareporting.directorySites.get
*
* @desc Gets one directory site by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Directory site ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.directorySites.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.directorySites.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Directory site ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/directorySites/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.directorySites.insert
*
* @desc Inserts a new directory site.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.directorySites.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.directorySites.insert
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).DirectorySite} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/directorySites',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.directorySites.list
*
* @desc Retrieves a list of directory sites, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var directorySitesPage = response['directorySites'];
* if (!directorySitesPage) {
* return;
* }
* for (var i = 0; i < directorySitesPage.length; i++) {
* // TODO: Change code below to process each resource in `directorySitesPage`:
* console.log(JSON.stringify(directorySitesPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.directorySites.list(request, handlePage);
* }
* };
*
* dfareporting.directorySites.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.directorySites.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {boolean=} params.acceptsInStreamVideoPlacements This search filter is no longer supported and will have no effect on the results returned.
* @param {boolean=} params.acceptsInterstitialPlacements This search filter is no longer supported and will have no effect on the results returned.
* @param {boolean=} params.acceptsPublisherPaidPlacements Select only directory sites that accept publisher paid placements. This field can be left blank.
* @param {boolean=} params.active Select only active directory sites. Leave blank to retrieve both active and inactive directory sites.
* @param {string=} params.countryId Select only directory sites with this country ID.
* @param {string=} params.dfp_network_code Select only directory sites with this DFP network code.
* @param {string=} params.ids Select only directory sites with these IDs.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string=} params.parentId Select only directory sites with this parent ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for objects by name, ID or URL. Wildcards (*) are allowed. For example, "directory site*2015" will return objects with names like "directory site June 2015", "directory site April 2015", or simply "directory site 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "directory site" will match objects with name "my directory site", "directory site 2015" or simply, "directory site".
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/directorySites',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.dynamicTargetingKeys = {
/**
* dfareporting.dynamicTargetingKeys.delete
*
* @desc Deletes an existing dynamic targeting key.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // ID of the object of this dynamic targeting key. This is a required field.
* objectId: '0', // TODO: Update placeholder value.
*
* // Name of this dynamic targeting key. This is a required field. Must be less than 256 characters long
* // and cannot contain commas. All characters are converted to lowercase.
* name: '', // TODO: Update placeholder value.
*
* // Type of the object of this dynamic targeting key. This is a required field.
* objectType: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.dynamicTargetingKeys.delete(request, function(err) {
* if (err) {
* console.log(err);
* return;
* }
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.dynamicTargetingKeys.delete
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.name Name of this dynamic targeting key. This is a required field. Must be less than 256 characters long and cannot contain commas. All characters are converted to lowercase.
* @param {string} params.objectId ID of the object of this dynamic targeting key. This is a required field.
* @param {string} params.objectType Type of the object of this dynamic targeting key. This is a required field.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/dynamicTargetingKeys/{objectId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['profileId', 'objectId', 'name', 'objectType'],
pathParams: ['objectId', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.dynamicTargetingKeys.insert
*
* @desc Inserts a new dynamic targeting key. Keys must be created at the advertiser level before being assigned to the advertiser's ads, creatives, or placements. There is a maximum of 1000 keys per advertiser, out of which a maximum of 20 keys can be assigned per ad, creative, or placement.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.dynamicTargetingKeys.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.dynamicTargetingKeys.insert
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).DynamicTargetingKey} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/dynamicTargetingKeys',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.dynamicTargetingKeys.list
*
* @desc Retrieves a list of dynamic targeting keys.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.dynamicTargetingKeys.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.dynamicTargetingKeys.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string=} params.advertiserId Select only dynamic targeting keys whose object has this advertiser ID.
* @param {string=} params.names Select only dynamic targeting keys exactly matching these names.
* @param {string=} params.objectId Select only dynamic targeting keys with this object ID.
* @param {string=} params.objectType Select only dynamic targeting keys with this object type.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/dynamicTargetingKeys',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.eventTags = {
/**
* dfareporting.eventTags.delete
*
* @desc Deletes an existing event tag.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Event tag ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.eventTags.delete(request, function(err) {
* if (err) {
* console.log(err);
* return;
* }
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.eventTags.delete
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Event tag ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/eventTags/{id}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.eventTags.get
*
* @desc Gets one event tag by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Event tag ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.eventTags.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.eventTags.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Event tag ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/eventTags/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.eventTags.insert
*
* @desc Inserts a new event tag.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.eventTags.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.eventTags.insert
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).EventTag} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/eventTags',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.eventTags.list
*
* @desc Retrieves a list of event tags, possibly filtered.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.eventTags.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.eventTags.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string=} params.adId Select only event tags that belong to this ad.
* @param {string=} params.advertiserId Select only event tags that belong to this advertiser.
* @param {string=} params.campaignId Select only event tags that belong to this campaign.
* @param {boolean=} params.definitionsOnly Examine only the specified campaign or advertiser's event tags for matching selector criteria. When set to false, the parent advertiser and parent campaign of the specified ad or campaign is examined as well. In addition, when set to false, the status field is examined as well, along with the enabledByDefault field. This parameter can not be set to true when adId is specified as ads do not define their own even tags.
* @param {boolean=} params.enabled Select only enabled event tags. What is considered enabled or disabled depends on the definitionsOnly parameter. When definitionsOnly is set to true, only the specified advertiser or campaign's event tags' enabledByDefault field is examined. When definitionsOnly is set to false, the specified ad or specified campaign's parent advertiser's or parent campaign's event tags' enabledByDefault and status fields are examined as well.
* @param {string=} params.eventTagTypes Select only event tags with the specified event tag types. Event tag types can be used to specify whether to use a third-party pixel, a third-party JavaScript URL, or a third-party click-through URL for either impression or click tracking.
* @param {string=} params.ids Select only event tags with these IDs.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, "eventtag*2015" will return objects with names like "eventtag June 2015", "eventtag April 2015", or simply "eventtag 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "eventtag" will match objects with name "my eventtag", "eventtag 2015", or simply "eventtag".
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/eventTags',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.eventTags.patch
*
* @desc Updates an existing event tag. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Event tag ID.
* id: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. Only these properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.eventTags.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.eventTags.patch
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Event tag ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).EventTag} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/eventTags',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.eventTags.update
*
* @desc Updates an existing event tag.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. All existing properties
* // will be replaced.
* },
*
* auth: authClient
* };
*
* dfareporting.eventTags.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.eventTags.update
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).EventTag} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/eventTags',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.files = {
/**
* dfareporting.files.get
*
* @desc Retrieves a report file by its report ID and file ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // The ID of the report.
* reportId: '0', // TODO: Update placeholder value.
*
* // The ID of the report file.
* fileId: '0', // TODO: Update placeholder value.
*
* // TODO: To download media content, use:
* //
* // alt: 'media',
*
* auth: authClient
* };
*
* dfareporting.files.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfareporting'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.files.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.fileId The ID of the report file.
* @param {string} params.reportId The ID of the report.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/reports/{reportId}/files/{fileId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['reportId', 'fileId'],
pathParams: ['fileId', 'reportId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.files.list
*
* @desc Lists files for a user profile.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // The DFA profile ID.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var itemsPage = response['items'];
* if (!itemsPage) {
* return;
* }
* for (var i = 0; i < itemsPage.length; i++) {
* // TODO: Change code below to process each resource in `itemsPage`:
* console.log(JSON.stringify(itemsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.files.list(request, handlePage);
* }
* };
*
* dfareporting.files.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfareporting'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.files.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken The value of the nextToken from the previous result page.
* @param {string} params.profileId The DFA profile ID.
* @param {string=} params.scope The scope that defines which results are returned, default is 'MINE'.
* @param {string=} params.sortField The field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is 'DESCENDING'.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/files',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.floodlightActivities = {
/**
* dfareporting.floodlightActivities.delete
*
* @desc Deletes an existing floodlight activity.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Floodlight activity ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.floodlightActivities.delete(request, function(err) {
* if (err) {
* console.log(err);
* return;
* }
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.floodlightActivities.delete
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Floodlight activity ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/floodlightActivities/{id}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.floodlightActivities.generatetag
*
* @desc Generates a tag for a floodlight activity.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.floodlightActivities.generatetag(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.floodlightActivities.generatetag
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string=} params.floodlightActivityId Floodlight activity ID for which we want to generate a tag.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
generatetag: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/floodlightActivities/generatetag',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.floodlightActivities.get
*
* @desc Gets one floodlight activity by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Floodlight activity ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.floodlightActivities.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.floodlightActivities.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Floodlight activity ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/floodlightActivities/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.floodlightActivities.insert
*
* @desc Inserts a new floodlight activity.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.floodlightActivities.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.floodlightActivities.insert
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).FloodlightActivity} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/floodlightActivities',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.floodlightActivities.list
*
* @desc Retrieves a list of floodlight activities, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var floodlightActivitiesPage = response['floodlightActivities'];
* if (!floodlightActivitiesPage) {
* return;
* }
* for (var i = 0; i < floodlightActivitiesPage.length; i++) {
* // TODO: Change code below to process each resource in `floodlightActivitiesPage`:
* console.log(JSON.stringify(floodlightActivitiesPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.floodlightActivities.list(request, handlePage);
* }
* };
*
* dfareporting.floodlightActivities.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.floodlightActivities.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string=} params.advertiserId Select only floodlight activities for the specified advertiser ID. Must specify either ids, advertiserId, or floodlightConfigurationId for a non-empty result.
* @param {string=} params.floodlightActivityGroupIds Select only floodlight activities with the specified floodlight activity group IDs.
* @param {string=} params.floodlightActivityGroupName Select only floodlight activities with the specified floodlight activity group name.
* @param {string=} params.floodlightActivityGroupTagString Select only floodlight activities with the specified floodlight activity group tag string.
* @param {string=} params.floodlightActivityGroupType Select only floodlight activities with the specified floodlight activity group type.
* @param {string=} params.floodlightConfigurationId Select only floodlight activities for the specified floodlight configuration ID. Must specify either ids, advertiserId, or floodlightConfigurationId for a non-empty result.
* @param {string=} params.ids Select only floodlight activities with the specified IDs. Must specify either ids, advertiserId, or floodlightConfigurationId for a non-empty result.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, "floodlightactivity*2015" will return objects with names like "floodlightactivity June 2015", "floodlightactivity April 2015", or simply "floodlightactivity 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "floodlightactivity" will match objects with name "my floodlightactivity activity", "floodlightactivity 2015", or simply "floodlightactivity".
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {string=} params.tagString Select only floodlight activities with the specified tag string.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/floodlightActivities',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.floodlightActivities.patch
*
* @desc Updates an existing floodlight activity. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Floodlight activity ID.
* id: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. Only these properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.floodlightActivities.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.floodlightActivities.patch
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Floodlight activity ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).FloodlightActivity} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/floodlightActivities',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.floodlightActivities.update
*
* @desc Updates an existing floodlight activity.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. All existing properties
* // will be replaced.
* },
*
* auth: authClient
* };
*
* dfareporting.floodlightActivities.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.floodlightActivities.update
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).FloodlightActivity} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/floodlightActivities',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.floodlightActivityGroups = {
/**
* dfareporting.floodlightActivityGroups.get
*
* @desc Gets one floodlight activity group by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Floodlight activity Group ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.floodlightActivityGroups.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.floodlightActivityGroups.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Floodlight activity Group ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/floodlightActivityGroups/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.floodlightActivityGroups.insert
*
* @desc Inserts a new floodlight activity group.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.floodlightActivityGroups.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.floodlightActivityGroups.insert
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).FloodlightActivityGroup} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/floodlightActivityGroups',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.floodlightActivityGroups.list
*
* @desc Retrieves a list of floodlight activity groups, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var floodlightActivityGroupsPage = response['floodlightActivityGroups'];
* if (!floodlightActivityGroupsPage) {
* return;
* }
* for (var i = 0; i < floodlightActivityGroupsPage.length; i++) {
* // TODO: Change code below to process each resource in `floodlightActivityGroupsPage`:
* console.log(JSON.stringify(floodlightActivityGroupsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.floodlightActivityGroups.list(request, handlePage);
* }
* };
*
* dfareporting.floodlightActivityGroups.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.floodlightActivityGroups.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string=} params.advertiserId Select only floodlight activity groups with the specified advertiser ID. Must specify either advertiserId or floodlightConfigurationId for a non-empty result.
* @param {string=} params.floodlightConfigurationId Select only floodlight activity groups with the specified floodlight configuration ID. Must specify either advertiserId, or floodlightConfigurationId for a non-empty result.
* @param {string=} params.ids Select only floodlight activity groups with the specified IDs. Must specify either advertiserId or floodlightConfigurationId for a non-empty result.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, "floodlightactivitygroup*2015" will return objects with names like "floodlightactivitygroup June 2015", "floodlightactivitygroup April 2015", or simply "floodlightactivitygroup 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "floodlightactivitygroup" will match objects with name "my floodlightactivitygroup activity", "floodlightactivitygroup 2015", or simply "floodlightactivitygroup".
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {string=} params.type Select only floodlight activity groups with the specified floodlight activity group type.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/floodlightActivityGroups',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.floodlightActivityGroups.patch
*
* @desc Updates an existing floodlight activity group. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Floodlight activity Group ID.
* id: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. Only these properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.floodlightActivityGroups.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.floodlightActivityGroups.patch
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Floodlight activity Group ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).FloodlightActivityGroup} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/floodlightActivityGroups',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.floodlightActivityGroups.update
*
* @desc Updates an existing floodlight activity group.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. All existing properties
* // will be replaced.
* },
*
* auth: authClient
* };
*
* dfareporting.floodlightActivityGroups.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.floodlightActivityGroups.update
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).FloodlightActivityGroup} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/floodlightActivityGroups',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.floodlightConfigurations = {
/**
* dfareporting.floodlightConfigurations.get
*
* @desc Gets one floodlight configuration by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Floodlight configuration ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.floodlightConfigurations.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.floodlightConfigurations.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Floodlight configuration ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/floodlightConfigurations/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.floodlightConfigurations.list
*
* @desc Retrieves a list of floodlight configurations, possibly filtered.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.floodlightConfigurations.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.floodlightConfigurations.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string=} params.ids Set of IDs of floodlight configurations to retrieve. Required field; otherwise an empty list will be returned.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/floodlightConfigurations',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.floodlightConfigurations.patch
*
* @desc Updates an existing floodlight configuration. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Floodlight configuration ID.
* id: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. Only these properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.floodlightConfigurations.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.floodlightConfigurations.patch
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Floodlight configuration ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).FloodlightConfiguration} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/floodlightConfigurations',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.floodlightConfigurations.update
*
* @desc Updates an existing floodlight configuration.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. All existing properties
* // will be replaced.
* },
*
* auth: authClient
* };
*
* dfareporting.floodlightConfigurations.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.floodlightConfigurations.update
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).FloodlightConfiguration} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/floodlightConfigurations',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.inventoryItems = {
/**
* dfareporting.inventoryItems.get
*
* @desc Gets one inventory item by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Project ID for order documents.
* projectId: '0', // TODO: Update placeholder value.
*
* // Inventory item ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.inventoryItems.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.inventoryItems.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Inventory item ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string} params.projectId Project ID for order documents.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/projects/{projectId}/inventoryItems/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'projectId', 'id'],
pathParams: ['id', 'profileId', 'projectId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.inventoryItems.list
*
* @desc Retrieves a list of inventory items, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Project ID for order documents.
* projectId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var inventoryItemsPage = response['inventoryItems'];
* if (!inventoryItemsPage) {
* return;
* }
* for (var i = 0; i < inventoryItemsPage.length; i++) {
* // TODO: Change code below to process each resource in `inventoryItemsPage`:
* console.log(JSON.stringify(inventoryItemsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.inventoryItems.list(request, handlePage);
* }
* };
*
* dfareporting.inventoryItems.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.inventoryItems.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string=} params.ids Select only inventory items with these IDs.
* @param {boolean=} params.inPlan Select only inventory items that are in plan.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.orderId Select only inventory items that belong to specified orders.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string} params.projectId Project ID for order documents.
* @param {string=} params.siteId Select only inventory items that are associated with these sites.
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {string=} params.type Select only inventory items with this type.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/projects/{projectId}/inventoryItems',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'projectId'],
pathParams: ['profileId', 'projectId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.landingPages = {
/**
* dfareporting.landingPages.delete
*
* @desc Deletes an existing campaign landing page.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Landing page campaign ID.
* campaignId: '0', // TODO: Update placeholder value.
*
* // Landing page ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.landingPages.delete(request, function(err) {
* if (err) {
* console.log(err);
* return;
* }
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.landingPages.delete
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.campaignId Landing page campaign ID.
* @param {string} params.id Landing page ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/campaigns/{campaignId}/landingPages/{id}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['profileId', 'campaignId', 'id'],
pathParams: ['campaignId', 'id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.landingPages.get
*
* @desc Gets one campaign landing page by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Landing page campaign ID.
* campaignId: '0', // TODO: Update placeholder value.
*
* // Landing page ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.landingPages.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.landingPages.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.campaignId Landing page campaign ID.
* @param {string} params.id Landing page ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/campaigns/{campaignId}/landingPages/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'campaignId', 'id'],
pathParams: ['campaignId', 'id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.landingPages.insert
*
* @desc Inserts a new landing page for the specified campaign.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Landing page campaign ID.
* campaignId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.landingPages.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.landingPages.insert
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.campaignId Landing page campaign ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).LandingPage} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/campaigns/{campaignId}/landingPages',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId', 'campaignId'],
pathParams: ['campaignId', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.landingPages.list
*
* @desc Retrieves the list of landing pages for the specified campaign.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Landing page campaign ID.
* campaignId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.landingPages.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.landingPages.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.campaignId Landing page campaign ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/campaigns/{campaignId}/landingPages',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'campaignId'],
pathParams: ['campaignId', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.landingPages.patch
*
* @desc Updates an existing campaign landing page. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Landing page campaign ID.
* campaignId: '0', // TODO: Update placeholder value.
*
* // Landing page ID.
* id: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. Only these properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.landingPages.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.landingPages.patch
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.campaignId Landing page campaign ID.
* @param {string} params.id Landing page ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).LandingPage} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/campaigns/{campaignId}/landingPages',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'campaignId', 'id'],
pathParams: ['campaignId', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.landingPages.update
*
* @desc Updates an existing campaign landing page.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Landing page campaign ID.
* campaignId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. All existing properties
* // will be replaced.
* },
*
* auth: authClient
* };
*
* dfareporting.landingPages.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.landingPages.update
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.campaignId Landing page campaign ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).LandingPage} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/campaigns/{campaignId}/landingPages',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId', 'campaignId'],
pathParams: ['campaignId', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.languages = {
/**
* dfareporting.languages.list
*
* @desc Retrieves a list of languages.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.languages.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.languages.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/languages',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.metros = {
/**
* dfareporting.metros.list
*
* @desc Retrieves a list of metros.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.metros.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.metros.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/metros',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.mobileCarriers = {
/**
* dfareporting.mobileCarriers.get
*
* @desc Gets one mobile carrier by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Mobile carrier ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.mobileCarriers.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.mobileCarriers.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Mobile carrier ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/mobileCarriers/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.mobileCarriers.list
*
* @desc Retrieves a list of mobile carriers.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.mobileCarriers.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.mobileCarriers.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/mobileCarriers',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.operatingSystemVersions = {
/**
* dfareporting.operatingSystemVersions.get
*
* @desc Gets one operating system version by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Operating system version ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.operatingSystemVersions.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.operatingSystemVersions.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Operating system version ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/operatingSystemVersions/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.operatingSystemVersions.list
*
* @desc Retrieves a list of operating system versions.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.operatingSystemVersions.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.operatingSystemVersions.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/operatingSystemVersions',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.operatingSystems = {
/**
* dfareporting.operatingSystems.get
*
* @desc Gets one operating system by DART ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Operating system DART ID.
* dartId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.operatingSystems.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.operatingSystems.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.dartId Operating system DART ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/operatingSystems/{dartId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'dartId'],
pathParams: ['dartId', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.operatingSystems.list
*
* @desc Retrieves a list of operating systems.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.operatingSystems.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.operatingSystems.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/operatingSystems',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.orderDocuments = {
/**
* dfareporting.orderDocuments.get
*
* @desc Gets one order document by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Project ID for order documents.
* projectId: '0', // TODO: Update placeholder value.
*
* // Order document ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.orderDocuments.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.orderDocuments.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Order document ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string} params.projectId Project ID for order documents.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/projects/{projectId}/orderDocuments/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'projectId', 'id'],
pathParams: ['id', 'profileId', 'projectId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.orderDocuments.list
*
* @desc Retrieves a list of order documents, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Project ID for order documents.
* projectId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var orderDocumentsPage = response['orderDocuments'];
* if (!orderDocumentsPage) {
* return;
* }
* for (var i = 0; i < orderDocumentsPage.length; i++) {
* // TODO: Change code below to process each resource in `orderDocumentsPage`:
* console.log(JSON.stringify(orderDocumentsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.orderDocuments.list(request, handlePage);
* }
* };
*
* dfareporting.orderDocuments.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.orderDocuments.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {boolean=} params.approved Select only order documents that have been approved by at least one user.
* @param {string=} params.ids Select only order documents with these IDs.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.orderId Select only order documents for specified orders.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string} params.projectId Project ID for order documents.
* @param {string=} params.searchString Allows searching for order documents by name or ID. Wildcards (*) are allowed. For example, "orderdocument*2015" will return order documents with names like "orderdocument June 2015", "orderdocument April 2015", or simply "orderdocument 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "orderdocument" will match order documents with name "my orderdocument", "orderdocument 2015", or simply "orderdocument".
* @param {string=} params.siteId Select only order documents that are associated with these sites.
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/projects/{projectId}/orderDocuments',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'projectId'],
pathParams: ['profileId', 'projectId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.orders = {
/**
* dfareporting.orders.get
*
* @desc Gets one order by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Project ID for orders.
* projectId: '0', // TODO: Update placeholder value.
*
* // Order ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.orders.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.orders.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Order ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string} params.projectId Project ID for orders.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/projects/{projectId}/orders/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'projectId', 'id'],
pathParams: ['id', 'profileId', 'projectId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.orders.list
*
* @desc Retrieves a list of orders, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Project ID for orders.
* projectId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var ordersPage = response['orders'];
* if (!ordersPage) {
* return;
* }
* for (var i = 0; i < ordersPage.length; i++) {
* // TODO: Change code below to process each resource in `ordersPage`:
* console.log(JSON.stringify(ordersPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.orders.list(request, handlePage);
* }
* };
*
* dfareporting.orders.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.orders.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string=} params.ids Select only orders with these IDs.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string} params.projectId Project ID for orders.
* @param {string=} params.searchString Allows searching for orders by name or ID. Wildcards (*) are allowed. For example, "order*2015" will return orders with names like "order June 2015", "order April 2015", or simply "order 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "order" will match orders with name "my order", "order 2015", or simply "order".
* @param {string=} params.siteId Select only orders that are associated with these site IDs.
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/projects/{projectId}/orders',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'projectId'],
pathParams: ['profileId', 'projectId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.placementGroups = {
/**
* dfareporting.placementGroups.get
*
* @desc Gets one placement group by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Placement group ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.placementGroups.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.placementGroups.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Placement group ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/placementGroups/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.placementGroups.insert
*
* @desc Inserts a new placement group.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.placementGroups.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.placementGroups.insert
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).PlacementGroup} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/placementGroups',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.placementGroups.list
*
* @desc Retrieves a list of placement groups, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var placementGroupsPage = response['placementGroups'];
* if (!placementGroupsPage) {
* return;
* }
* for (var i = 0; i < placementGroupsPage.length; i++) {
* // TODO: Change code below to process each resource in `placementGroupsPage`:
* console.log(JSON.stringify(placementGroupsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.placementGroups.list(request, handlePage);
* }
* };
*
* dfareporting.placementGroups.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.placementGroups.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string=} params.advertiserIds Select only placement groups that belong to these advertisers.
* @param {boolean=} params.archived Select only archived placements. Don't set this field to select both archived and non-archived placements.
* @param {string=} params.campaignIds Select only placement groups that belong to these campaigns.
* @param {string=} params.contentCategoryIds Select only placement groups that are associated with these content categories.
* @param {string=} params.directorySiteIds Select only placement groups that are associated with these directory sites.
* @param {string=} params.ids Select only placement groups with these IDs.
* @param {string=} params.maxEndDate Select only placements or placement groups whose end date is on or before the specified maxEndDate. The date should be formatted as "yyyy-MM-dd".
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.maxStartDate Select only placements or placement groups whose start date is on or before the specified maxStartDate. The date should be formatted as "yyyy-MM-dd".
* @param {string=} params.minEndDate Select only placements or placement groups whose end date is on or after the specified minEndDate. The date should be formatted as "yyyy-MM-dd".
* @param {string=} params.minStartDate Select only placements or placement groups whose start date is on or after the specified minStartDate. The date should be formatted as "yyyy-MM-dd".
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string=} params.placementGroupType Select only placement groups belonging with this group type. A package is a simple group of placements that acts as a single pricing point for a group of tags. A roadblock is a group of placements that not only acts as a single pricing point but also assumes that all the tags in it will be served at the same time. A roadblock requires one of its assigned placements to be marked as primary for reporting.
* @param {string=} params.placementStrategyIds Select only placement groups that are associated with these placement strategies.
* @param {string=} params.pricingTypes Select only placement groups with these pricing types.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for placement groups by name or ID. Wildcards (*) are allowed. For example, "placement*2015" will return placement groups with names like "placement group June 2015", "placement group May 2015", or simply "placements 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "placementgroup" will match placement groups with name "my placementgroup", "placementgroup 2015", or simply "placementgroup".
* @param {string=} params.siteIds Select only placement groups that are associated with these sites.
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/placementGroups',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.placementGroups.patch
*
* @desc Updates an existing placement group. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Placement group ID.
* id: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. Only these properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.placementGroups.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.placementGroups.patch
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Placement group ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).PlacementGroup} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/placementGroups',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.placementGroups.update
*
* @desc Updates an existing placement group.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. All existing properties
* // will be replaced.
* },
*
* auth: authClient
* };
*
* dfareporting.placementGroups.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.placementGroups.update
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).PlacementGroup} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/placementGroups',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.placementStrategies = {
/**
* dfareporting.placementStrategies.delete
*
* @desc Deletes an existing placement strategy.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Placement strategy ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.placementStrategies.delete(request, function(err) {
* if (err) {
* console.log(err);
* return;
* }
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.placementStrategies.delete
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Placement strategy ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/placementStrategies/{id}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.placementStrategies.get
*
* @desc Gets one placement strategy by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Placement strategy ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.placementStrategies.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.placementStrategies.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Placement strategy ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/placementStrategies/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.placementStrategies.insert
*
* @desc Inserts a new placement strategy.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.placementStrategies.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.placementStrategies.insert
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).PlacementStrategy} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/placementStrategies',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.placementStrategies.list
*
* @desc Retrieves a list of placement strategies, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var placementStrategiesPage = response['placementStrategies'];
* if (!placementStrategiesPage) {
* return;
* }
* for (var i = 0; i < placementStrategiesPage.length; i++) {
* // TODO: Change code below to process each resource in `placementStrategiesPage`:
* console.log(JSON.stringify(placementStrategiesPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.placementStrategies.list(request, handlePage);
* }
* };
*
* dfareporting.placementStrategies.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.placementStrategies.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string=} params.ids Select only placement strategies with these IDs.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, "placementstrategy*2015" will return objects with names like "placementstrategy June 2015", "placementstrategy April 2015", or simply "placementstrategy 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "placementstrategy" will match objects with name "my placementstrategy", "placementstrategy 2015", or simply "placementstrategy".
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/placementStrategies',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.placementStrategies.patch
*
* @desc Updates an existing placement strategy. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Placement strategy ID.
* id: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. Only these properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.placementStrategies.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.placementStrategies.patch
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Placement strategy ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).PlacementStrategy} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/placementStrategies',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.placementStrategies.update
*
* @desc Updates an existing placement strategy.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. All existing properties
* // will be replaced.
* },
*
* auth: authClient
* };
*
* dfareporting.placementStrategies.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.placementStrategies.update
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).PlacementStrategy} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/placementStrategies',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.placements = {
/**
* dfareporting.placements.generatetags
*
* @desc Generates tags for a placement.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.placements.generatetags(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.placements.generatetags
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string=} params.campaignId Generate placements belonging to this campaign. This is a required field.
* @param {string=} params.placementIds Generate tags for these placements.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.tagFormats Tag formats to generate for these placements.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
generatetags: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/placements/generatetags',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.placements.get
*
* @desc Gets one placement by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Placement ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.placements.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.placements.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Placement ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/placements/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.placements.insert
*
* @desc Inserts a new placement.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.placements.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.placements.insert
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).Placement} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/placements',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.placements.list
*
* @desc Retrieves a list of placements, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var placementsPage = response['placements'];
* if (!placementsPage) {
* return;
* }
* for (var i = 0; i < placementsPage.length; i++) {
* // TODO: Change code below to process each resource in `placementsPage`:
* console.log(JSON.stringify(placementsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.placements.list(request, handlePage);
* }
* };
*
* dfareporting.placements.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.placements.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string=} params.advertiserIds Select only placements that belong to these advertisers.
* @param {boolean=} params.archived Select only archived placements. Don't set this field to select both archived and non-archived placements.
* @param {string=} params.campaignIds Select only placements that belong to these campaigns.
* @param {string=} params.compatibilities Select only placements that are associated with these compatibilities. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop or on mobile devices for regular or interstitial ads respectively. APP and APP_INTERSTITIAL are for rendering in mobile apps. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard.
* @param {string=} params.contentCategoryIds Select only placements that are associated with these content categories.
* @param {string=} params.directorySiteIds Select only placements that are associated with these directory sites.
* @param {string=} params.groupIds Select only placements that belong to these placement groups.
* @param {string=} params.ids Select only placements with these IDs.
* @param {string=} params.maxEndDate Select only placements or placement groups whose end date is on or before the specified maxEndDate. The date should be formatted as "yyyy-MM-dd".
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.maxStartDate Select only placements or placement groups whose start date is on or before the specified maxStartDate. The date should be formatted as "yyyy-MM-dd".
* @param {string=} params.minEndDate Select only placements or placement groups whose end date is on or after the specified minEndDate. The date should be formatted as "yyyy-MM-dd".
* @param {string=} params.minStartDate Select only placements or placement groups whose start date is on or after the specified minStartDate. The date should be formatted as "yyyy-MM-dd".
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string=} params.paymentSource Select only placements with this payment source.
* @param {string=} params.placementStrategyIds Select only placements that are associated with these placement strategies.
* @param {string=} params.pricingTypes Select only placements with these pricing types.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for placements by name or ID. Wildcards (*) are allowed. For example, "placement*2015" will return placements with names like "placement June 2015", "placement May 2015", or simply "placements 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "placement" will match placements with name "my placement", "placement 2015", or simply "placement".
* @param {string=} params.siteIds Select only placements that are associated with these sites.
* @param {string=} params.sizeIds Select only placements that are associated with these sizes.
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/placements',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.placements.patch
*
* @desc Updates an existing placement. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Placement ID.
* id: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. Only these properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.placements.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.placements.patch
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Placement ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).Placement} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/placements',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.placements.update
*
* @desc Updates an existing placement.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. All existing properties
* // will be replaced.
* },
*
* auth: authClient
* };
*
* dfareporting.placements.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.placements.update
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).Placement} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/placements',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.platformTypes = {
/**
* dfareporting.platformTypes.get
*
* @desc Gets one platform type by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Platform type ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.platformTypes.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.platformTypes.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Platform type ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/platformTypes/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.platformTypes.list
*
* @desc Retrieves a list of platform types.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.platformTypes.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.platformTypes.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/platformTypes',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.postalCodes = {
/**
* dfareporting.postalCodes.get
*
* @desc Gets one postal code by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Postal code ID.
* code: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.postalCodes.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.postalCodes.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.code Postal code ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/postalCodes/{code}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'code'],
pathParams: ['code', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.postalCodes.list
*
* @desc Retrieves a list of postal codes.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.postalCodes.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.postalCodes.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/postalCodes',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.projects = {
/**
* dfareporting.projects.get
*
* @desc Gets one project by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Project ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.projects.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.projects.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Project ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/projects/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.projects.list
*
* @desc Retrieves a list of projects, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var projectsPage = response['projects'];
* if (!projectsPage) {
* return;
* }
* for (var i = 0; i < projectsPage.length; i++) {
* // TODO: Change code below to process each resource in `projectsPage`:
* console.log(JSON.stringify(projectsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.projects.list(request, handlePage);
* }
* };
*
* dfareporting.projects.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.projects.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string=} params.advertiserIds Select only projects with these advertiser IDs.
* @param {string=} params.ids Select only projects with these IDs.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for projects by name or ID. Wildcards (*) are allowed. For example, "project*2015" will return projects with names like "project June 2015", "project April 2015", or simply "project 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "project" will match projects with name "my project", "project 2015", or simply "project".
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/projects',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.regions = {
/**
* dfareporting.regions.list
*
* @desc Retrieves a list of regions.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.regions.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.regions.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/regions',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.remarketingListShares = {
/**
* dfareporting.remarketingListShares.get
*
* @desc Gets one remarketing list share by remarketing list ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Remarketing list ID.
* remarketingListId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.remarketingListShares.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.remarketingListShares.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {string} params.remarketingListId Remarketing list ID.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/remarketingListShares/{remarketingListId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'remarketingListId'],
pathParams: ['profileId', 'remarketingListId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.remarketingListShares.patch
*
* @desc Updates an existing remarketing list share. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Remarketing list ID.
* remarketingListId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. Only these properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.remarketingListShares.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.remarketingListShares.patch
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {string} params.remarketingListId Remarketing list ID.
* @param {dfareporting(v2.7).RemarketingListShare} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/remarketingListShares',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'remarketingListId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.remarketingListShares.update
*
* @desc Updates an existing remarketing list share.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. All existing properties
* // will be replaced.
* },
*
* auth: authClient
* };
*
* dfareporting.remarketingListShares.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.remarketingListShares.update
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).RemarketingListShare} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/remarketingListShares',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.remarketingLists = {
/**
* dfareporting.remarketingLists.get
*
* @desc Gets one remarketing list by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Remarketing list ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.remarketingLists.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.remarketingLists.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Remarketing list ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/remarketingLists/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.remarketingLists.insert
*
* @desc Inserts a new remarketing list.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.remarketingLists.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.remarketingLists.insert
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).RemarketingList} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/remarketingLists',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.remarketingLists.list
*
* @desc Retrieves a list of remarketing lists, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Select only remarketing lists owned by this advertiser.
* advertiserId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var remarketingListsPage = response['remarketingLists'];
* if (!remarketingListsPage) {
* return;
* }
* for (var i = 0; i < remarketingListsPage.length; i++) {
* // TODO: Change code below to process each resource in `remarketingListsPage`:
* console.log(JSON.stringify(remarketingListsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.remarketingLists.list(request, handlePage);
* }
* };
*
* dfareporting.remarketingLists.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.remarketingLists.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {boolean=} params.active Select only active or only inactive remarketing lists.
* @param {string} params.advertiserId Select only remarketing lists owned by this advertiser.
* @param {string=} params.floodlightActivityId Select only remarketing lists that have this floodlight activity ID.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.name Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, "remarketing list*2015" will return objects with names like "remarketing list June 2015", "remarketing list April 2015", or simply "remarketing list 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "remarketing list" will match objects with name "my remarketing list", "remarketing list 2015", or simply "remarketing list".
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/remarketingLists',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'advertiserId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.remarketingLists.patch
*
* @desc Updates an existing remarketing list. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Remarketing list ID.
* id: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. Only these properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.remarketingLists.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.remarketingLists.patch
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Remarketing list ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).RemarketingList} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/remarketingLists',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.remarketingLists.update
*
* @desc Updates an existing remarketing list.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. All existing properties
* // will be replaced.
* },
*
* auth: authClient
* };
*
* dfareporting.remarketingLists.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.remarketingLists.update
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).RemarketingList} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/remarketingLists',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.reports = {
/**
* dfareporting.reports.delete
*
* @desc Deletes a report by its ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // The DFA user profile ID.
* profileId: '0', // TODO: Update placeholder value.
*
* // The ID of the report.
* reportId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.reports.delete(request, function(err) {
* if (err) {
* console.log(err);
* return;
* }
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfareporting'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.reports.delete
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId The DFA user profile ID.
* @param {string} params.reportId The ID of the report.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/reports/{reportId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['profileId', 'reportId'],
pathParams: ['profileId', 'reportId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.reports.get
*
* @desc Retrieves a report by its ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // The DFA user profile ID.
* profileId: '0', // TODO: Update placeholder value.
*
* // The ID of the report.
* reportId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.reports.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfareporting'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.reports.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId The DFA user profile ID.
* @param {string} params.reportId The ID of the report.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/reports/{reportId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'reportId'],
pathParams: ['profileId', 'reportId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.reports.insert
*
* @desc Creates a report.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // The DFA user profile ID.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.reports.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfareporting'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.reports.insert
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId The DFA user profile ID.
* @param {dfareporting(v2.7).Report} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/reports',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.reports.list
*
* @desc Retrieves list of reports.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // The DFA user profile ID.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var itemsPage = response['items'];
* if (!itemsPage) {
* return;
* }
* for (var i = 0; i < itemsPage.length; i++) {
* // TODO: Change code below to process each resource in `itemsPage`:
* console.log(JSON.stringify(itemsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.reports.list(request, handlePage);
* }
* };
*
* dfareporting.reports.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfareporting'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.reports.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken The value of the nextToken from the previous result page.
* @param {string} params.profileId The DFA user profile ID.
* @param {string=} params.scope The scope that defines which results are returned, default is 'MINE'.
* @param {string=} params.sortField The field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is 'DESCENDING'.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/reports',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.reports.patch
*
* @desc Updates a report. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // The DFA user profile ID.
* profileId: '0', // TODO: Update placeholder value.
*
* // The ID of the report.
* reportId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. Only these properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.reports.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfareporting'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.reports.patch
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId The DFA user profile ID.
* @param {string} params.reportId The ID of the report.
* @param {dfareporting(v2.7).Report} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/reports/{reportId}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'reportId'],
pathParams: ['profileId', 'reportId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.reports.run
*
* @desc Runs a report.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // The DFA profile ID.
* profileId: '0', // TODO: Update placeholder value.
*
* // The ID of the report.
* reportId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.reports.run(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfareporting'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.reports.run
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId The DFA profile ID.
* @param {string} params.reportId The ID of the report.
* @param {boolean=} params.synchronous If set and true, tries to run the report synchronously.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
run: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/reports/{reportId}/run',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId', 'reportId'],
pathParams: ['profileId', 'reportId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.reports.update
*
* @desc Updates a report.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // The DFA user profile ID.
* profileId: '0', // TODO: Update placeholder value.
*
* // The ID of the report.
* reportId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. All existing properties
* // will be replaced.
* },
*
* auth: authClient
* };
*
* dfareporting.reports.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfareporting'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.reports.update
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId The DFA user profile ID.
* @param {string} params.reportId The ID of the report.
* @param {dfareporting(v2.7).Report} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/reports/{reportId}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId', 'reportId'],
pathParams: ['profileId', 'reportId'],
context: self
};
return createAPIRequest(parameters, callback);
},
compatibleFields: {
/**
* dfareporting.reports.compatibleFields.query
*
* @desc Returns the fields that are compatible to be selected in the respective sections of a report criteria, given the fields already selected in the input report and user permissions.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // The DFA user profile ID.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.reports.compatibleFields.query(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfareporting'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.reports.compatibleFields.query
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId The DFA user profile ID.
* @param {dfareporting(v2.7).Report} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
query: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/reports/compatiblefields/query',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
files: {
/**
* dfareporting.reports.files.get
*
* @desc Retrieves a report file.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // The DFA profile ID.
* profileId: '0', // TODO: Update placeholder value.
*
* // The ID of the report.
* reportId: '0', // TODO: Update placeholder value.
*
* // The ID of the report file.
* fileId: '0', // TODO: Update placeholder value.
*
* // TODO: To download media content, use:
* //
* // alt: 'media',
*
* auth: authClient
* };
*
* dfareporting.reports.files.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfareporting'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.reports.files.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.fileId The ID of the report file.
* @param {string} params.profileId The DFA profile ID.
* @param {string} params.reportId The ID of the report.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/reports/{reportId}/files/{fileId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'reportId', 'fileId'],
pathParams: ['fileId', 'profileId', 'reportId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.reports.files.list
*
* @desc Lists files for a report.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // The DFA profile ID.
* profileId: '0', // TODO: Update placeholder value.
*
* // The ID of the parent report.
* reportId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var itemsPage = response['items'];
* if (!itemsPage) {
* return;
* }
* for (var i = 0; i < itemsPage.length; i++) {
* // TODO: Change code below to process each resource in `itemsPage`:
* console.log(JSON.stringify(itemsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.reports.files.list(request, handlePage);
* }
* };
*
* dfareporting.reports.files.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfareporting'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.reports.files.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken The value of the nextToken from the previous result page.
* @param {string} params.profileId The DFA profile ID.
* @param {string} params.reportId The ID of the parent report.
* @param {string=} params.sortField The field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is 'DESCENDING'.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/reports/{reportId}/files',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'reportId'],
pathParams: ['profileId', 'reportId'],
context: self
};
return createAPIRequest(parameters, callback);
}
}
};
self.sites = {
/**
* dfareporting.sites.get
*
* @desc Gets one site by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Site ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.sites.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.sites.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Site ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/sites/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.sites.insert
*
* @desc Inserts a new site.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.sites.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.sites.insert
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).Site} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/sites',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.sites.list
*
* @desc Retrieves a list of sites, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var sitesPage = response['sites'];
* if (!sitesPage) {
* return;
* }
* for (var i = 0; i < sitesPage.length; i++) {
* // TODO: Change code below to process each resource in `sitesPage`:
* console.log(JSON.stringify(sitesPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.sites.list(request, handlePage);
* }
* };
*
* dfareporting.sites.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.sites.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {boolean=} params.acceptsInStreamVideoPlacements This search filter is no longer supported and will have no effect on the results returned.
* @param {boolean=} params.acceptsInterstitialPlacements This search filter is no longer supported and will have no effect on the results returned.
* @param {boolean=} params.acceptsPublisherPaidPlacements Select only sites that accept publisher paid placements.
* @param {boolean=} params.adWordsSite Select only AdWords sites.
* @param {boolean=} params.approved Select only approved sites.
* @param {string=} params.campaignIds Select only sites with these campaign IDs.
* @param {string=} params.directorySiteIds Select only sites with these directory site IDs.
* @param {string=} params.ids Select only sites with these IDs.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for objects by name, ID or keyName. Wildcards (*) are allowed. For example, "site*2015" will return objects with names like "site June 2015", "site April 2015", or simply "site 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "site" will match objects with name "my site", "site 2015", or simply "site".
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {string=} params.subaccountId Select only sites with this subaccount ID.
* @param {boolean=} params.unmappedSite Select only sites that have not been mapped to a directory site.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/sites',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.sites.patch
*
* @desc Updates an existing site. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Site ID.
* id: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. Only these properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.sites.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.sites.patch
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Site ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).Site} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/sites',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.sites.update
*
* @desc Updates an existing site.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. All existing properties
* // will be replaced.
* },
*
* auth: authClient
* };
*
* dfareporting.sites.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.sites.update
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).Site} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/sites',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.sizes = {
/**
* dfareporting.sizes.get
*
* @desc Gets one size by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Size ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.sizes.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.sizes.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Size ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/sizes/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.sizes.insert
*
* @desc Inserts a new size.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.sizes.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.sizes.insert
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).Size} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/sizes',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.sizes.list
*
* @desc Retrieves a list of sizes, possibly filtered.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.sizes.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.sizes.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {integer=} params.height Select only sizes with this height.
* @param {boolean=} params.iabStandard Select only IAB standard sizes.
* @param {string=} params.ids Select only sizes with these IDs.
* @param {string} params.profileId User profile ID associated with this request.
* @param {integer=} params.width Select only sizes with this width.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/sizes',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.subaccounts = {
/**
* dfareporting.subaccounts.get
*
* @desc Gets one subaccount by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Subaccount ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.subaccounts.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.subaccounts.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Subaccount ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/subaccounts/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.subaccounts.insert
*
* @desc Inserts a new subaccount.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.subaccounts.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.subaccounts.insert
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).Subaccount} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/subaccounts',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.subaccounts.list
*
* @desc Gets a list of subaccounts, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var subaccountsPage = response['subaccounts'];
* if (!subaccountsPage) {
* return;
* }
* for (var i = 0; i < subaccountsPage.length; i++) {
* // TODO: Change code below to process each resource in `subaccountsPage`:
* console.log(JSON.stringify(subaccountsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.subaccounts.list(request, handlePage);
* }
* };
*
* dfareporting.subaccounts.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.subaccounts.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string=} params.ids Select only subaccounts with these IDs.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, "subaccount*2015" will return objects with names like "subaccount June 2015", "subaccount April 2015", or simply "subaccount 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "subaccount" will match objects with name "my subaccount", "subaccount 2015", or simply "subaccount".
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/subaccounts',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.subaccounts.patch
*
* @desc Updates an existing subaccount. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Subaccount ID.
* id: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. Only these properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.subaccounts.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.subaccounts.patch
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Subaccount ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).Subaccount} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/subaccounts',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.subaccounts.update
*
* @desc Updates an existing subaccount.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. All existing properties
* // will be replaced.
* },
*
* auth: authClient
* };
*
* dfareporting.subaccounts.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.subaccounts.update
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).Subaccount} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/subaccounts',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.targetableRemarketingLists = {
/**
* dfareporting.targetableRemarketingLists.get
*
* @desc Gets one remarketing list by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Remarketing list ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.targetableRemarketingLists.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.targetableRemarketingLists.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Remarketing list ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/targetableRemarketingLists/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.targetableRemarketingLists.list
*
* @desc Retrieves a list of targetable remarketing lists, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Select only targetable remarketing lists targetable by these advertisers.
* advertiserId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var targetableRemarketingListsPage = response['targetableRemarketingLists'];
* if (!targetableRemarketingListsPage) {
* return;
* }
* for (var i = 0; i < targetableRemarketingListsPage.length; i++) {
* // TODO: Change code below to process each resource in `targetableRemarketingListsPage`:
* console.log(JSON.stringify(targetableRemarketingListsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.targetableRemarketingLists.list(request, handlePage);
* }
* };
*
* dfareporting.targetableRemarketingLists.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.targetableRemarketingLists.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {boolean=} params.active Select only active or only inactive targetable remarketing lists.
* @param {string} params.advertiserId Select only targetable remarketing lists targetable by these advertisers.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.name Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, "remarketing list*2015" will return objects with names like "remarketing list June 2015", "remarketing list April 2015", or simply "remarketing list 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "remarketing list" will match objects with name "my remarketing list", "remarketing list 2015", or simply "remarketing list".
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/targetableRemarketingLists',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'advertiserId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.targetingTemplates = {
/**
* dfareporting.targetingTemplates.get
*
* @desc Gets one targeting template by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Targeting template ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.targetingTemplates.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.targetingTemplates.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Targeting template ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/targetingTemplates/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.targetingTemplates.insert
*
* @desc Inserts a new targeting template.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.targetingTemplates.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.targetingTemplates.insert
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).TargetingTemplate} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/targetingTemplates',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.targetingTemplates.list
*
* @desc Retrieves a list of targeting templates, optionally filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var targetingTemplatesPage = response['targetingTemplates'];
* if (!targetingTemplatesPage) {
* return;
* }
* for (var i = 0; i < targetingTemplatesPage.length; i++) {
* // TODO: Change code below to process each resource in `targetingTemplatesPage`:
* console.log(JSON.stringify(targetingTemplatesPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.targetingTemplates.list(request, handlePage);
* }
* };
*
* dfareporting.targetingTemplates.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.targetingTemplates.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string=} params.advertiserId Select only targeting templates with this advertiser ID.
* @param {string=} params.ids Select only targeting templates with these IDs.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, "template*2015" will return objects with names like "template June 2015", "template April 2015", or simply "template 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "template" will match objects with name "my template", "template 2015", or simply "template".
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/targetingTemplates',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.targetingTemplates.patch
*
* @desc Updates an existing targeting template. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Targeting template ID.
* id: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. Only these properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.targetingTemplates.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.targetingTemplates.patch
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id Targeting template ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).TargetingTemplate} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/targetingTemplates',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.targetingTemplates.update
*
* @desc Updates an existing targeting template.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. All existing properties
* // will be replaced.
* },
*
* auth: authClient
* };
*
* dfareporting.targetingTemplates.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.targetingTemplates.update
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).TargetingTemplate} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/targetingTemplates',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.userProfiles = {
/**
* dfareporting.userProfiles.get
*
* @desc Gets one user profile by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // The user profile ID.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.userProfiles.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using one of the following scopes:
* // 'https://www.googleapis.com/auth/dfareporting'
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.userProfiles.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId The user profile ID.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.userProfiles.list
*
* @desc Retrieves list of user profiles for a user.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* auth: authClient
* };
*
* dfareporting.userProfiles.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using one of the following scopes:
* // 'https://www.googleapis.com/auth/dfareporting'
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.userProfiles.list
* @memberOf! dfareporting(v2.7)
*
* @param {object=} params Parameters for request
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles',
method: 'GET'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.userRolePermissionGroups = {
/**
* dfareporting.userRolePermissionGroups.get
*
* @desc Gets one user role permission group by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // User role permission group ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.userRolePermissionGroups.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.userRolePermissionGroups.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id User role permission group ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/userRolePermissionGroups/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.userRolePermissionGroups.list
*
* @desc Gets a list of all supported user role permission groups.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.userRolePermissionGroups.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.userRolePermissionGroups.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/userRolePermissionGroups',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.userRolePermissions = {
/**
* dfareporting.userRolePermissions.get
*
* @desc Gets one user role permission by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // User role permission ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.userRolePermissions.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.userRolePermissions.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id User role permission ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/userRolePermissions/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.userRolePermissions.list
*
* @desc Gets a list of user role permissions, possibly filtered.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.userRolePermissions.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.userRolePermissions.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string=} params.ids Select only user role permissions with these IDs.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/userRolePermissions',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.userRoles = {
/**
* dfareporting.userRoles.delete
*
* @desc Deletes an existing user role.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // User role ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.userRoles.delete(request, function(err) {
* if (err) {
* console.log(err);
* return;
* }
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.userRoles.delete
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id User role ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/userRoles/{id}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.userRoles.get
*
* @desc Gets one user role by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // User role ID.
* id: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.userRoles.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.userRoles.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id User role ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/userRoles/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.userRoles.insert
*
* @desc Inserts a new user role.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* dfareporting.userRoles.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.userRoles.insert
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).UserRole} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/userRoles',
method: 'POST'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.userRoles.list
*
* @desc Retrieves a list of user roles, possibly filtered. This method supports paging.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var userRolesPage = response['userRoles'];
* if (!userRolesPage) {
* return;
* }
* for (var i = 0; i < userRolesPage.length; i++) {
* // TODO: Change code below to process each resource in `userRolesPage`:
* console.log(JSON.stringify(userRolesPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* dfareporting.userRoles.list(request, handlePage);
* }
* };
*
* dfareporting.userRoles.list(request, handlePage);
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.userRoles.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {boolean=} params.accountUserRoleOnly Select only account level user roles not associated with any specific subaccount.
* @param {string=} params.ids Select only user roles with the specified IDs.
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Value of the nextPageToken from the previous result page.
* @param {string} params.profileId User profile ID associated with this request.
* @param {string=} params.searchString Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, "userrole*2015" will return objects with names like "userrole June 2015", "userrole April 2015", or simply "userrole 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "userrole" will match objects with name "my userrole", "userrole 2015", or simply "userrole".
* @param {string=} params.sortField Field by which to sort the list.
* @param {string=} params.sortOrder Order of sorted results, default is ASCENDING.
* @param {string=} params.subaccountId Select only user roles that belong to this subaccount.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/userRoles',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.userRoles.patch
*
* @desc Updates an existing user role. This method supports patch semantics.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // User role ID.
* id: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. Only these properties
* // will be changed.
* },
*
* auth: authClient
* };
*
* dfareporting.userRoles.patch(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.userRoles.patch
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.id User role ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).UserRole} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/userRoles',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.userRoles.update
*
* @desc Updates an existing user role.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. All existing properties
* // will be replaced.
* },
*
* auth: authClient
* };
*
* dfareporting.userRoles.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.userRoles.update
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {dfareporting(v2.7).UserRole} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/userRoles',
method: 'PUT'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.videoFormats = {
/**
* dfareporting.videoFormats.get
*
* @desc Gets one video format by ID.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* // Video format ID.
* id: 0, // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.videoFormats.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.videoFormats.get
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {integer} params.id Video format ID.
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/videoFormats/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId', 'id'],
pathParams: ['id', 'profileId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* dfareporting.videoFormats.list
*
* @desc Lists available video formats.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the DCM/DFA Reporting And Trafficking API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/dfareporting
* // 2. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var dfareporting = google.dfareporting('v2.7');
*
* authorize(function(authClient) {
* var request = {
* // User profile ID associated with this request.
* profileId: '0', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* dfareporting.videoFormats.list(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* // TODO: Change placeholder below to generate authentication credentials. See
* // https://developers.google.com/doubleclick-advertisers/authorizing#examples
* //
* // Authorize using the following scope:
* // 'https://www.googleapis.com/auth/dfatrafficking'
* var authClient = null;
*
* if (authClient == null) {
* console.log('authentication failed');
* return;
* }
* callback(authClient);
* }
*
* @alias dfareporting.videoFormats.list
* @memberOf! dfareporting(v2.7)
*
* @param {object} params Parameters for request
* @param {string} params.profileId User profile ID associated with this request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/dfareporting/v2.7/userprofiles/{profileId}/videoFormats',
method: 'GET'
}, options),
params: params,
requiredParams: ['profileId'],
pathParams: ['profileId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
}
/**
* @typedef Account
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string[]} accountPermissionIds Account permissions assigned to this account.
* @property {string} accountProfile Profile for this account. This is a read-only field that can be left blank.
* @property {boolean} active Whether this account is active.
* @property {string} activeAdsLimitTier Maximum number of active ads allowed for this account.
* @property {boolean} activeViewOptOut Whether to serve creatives with Active View tags. If disabled, viewability data will not be available for any impressions.
* @property {string[]} availablePermissionIds User role permissions available to the user roles of this account.
* @property {string} countryId ID of the country associated with this account.
* @property {string} currencyId ID of currency associated with this account. This is a required field.
Acceptable values are:
- "1" for USD
- "2" for GBP
- "3" for ESP
- "4" for SEK
- "5" for CAD
- "6" for JPY
- "7" for DEM
- "8" for AUD
- "9" for FRF
- "10" for ITL
- "11" for DKK
- "12" for NOK
- "13" for FIM
- "14" for ZAR
- "15" for IEP
- "16" for NLG
- "17" for EUR
- "18" for KRW
- "19" for TWD
- "20" for SGD
- "21" for CNY
- "22" for HKD
- "23" for NZD
- "24" for MYR
- "25" for BRL
- "26" for PTE
- "27" for MXP
- "28" for CLP
- "29" for TRY
- "30" for ARS
- "31" for PEN
- "32" for ILS
- "33" for CHF
- "34" for VEF
- "35" for COP
- "36" for GTQ
- "37" for PLN
- "39" for INR
- "40" for THB
- "41" for IDR
- "42" for CZK
- "43" for RON
- "44" for HUF
- "45" for RUB
- "46" for AED
- "47" for BGN
- "48" for HRK
* @property {string} defaultCreativeSizeId Default placement dimensions for this account.
* @property {string} description Description of this account.
* @property {string} id ID of this account. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#account".
* @property {string} locale Locale of this account.
Acceptable values are:
- "cs" (Czech)
- "de" (German)
- "en" (English)
- "en-GB" (English United Kingdom)
- "es" (Spanish)
- "fr" (French)
- "it" (Italian)
- "ja" (Japanese)
- "ko" (Korean)
- "pl" (Polish)
- "pt-BR" (Portuguese Brazil)
- "ru" (Russian)
- "sv" (Swedish)
- "tr" (Turkish)
- "zh-CN" (Chinese Simplified)
- "zh-TW" (Chinese Traditional)
* @property {string} maximumImageSize Maximum image size allowed for this account.
* @property {string} name Name of this account. This is a required field, and must be less than 128 characters long and be globally unique.
* @property {boolean} nielsenOcrEnabled Whether campaigns created in this account will be enabled for Nielsen OCR reach ratings by default.
* @property {dfareporting(v2.7).ReportsConfiguration} reportsConfiguration Reporting configuration of this account.
* @property {boolean} shareReportsWithTwitter Share Path to Conversion reports with Twitter.
* @property {string} teaserSizeLimit File size limit in kilobytes of Rich Media teaser creatives. Must be between 1 and 10240.
*/
/**
* @typedef AccountActiveAdSummary
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} accountId ID of the account.
* @property {string} activeAds Ads that have been activated for the account
* @property {string} activeAdsLimitTier Maximum number of active ads allowed for the account.
* @property {string} availableAds Ads that can be activated for the account.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#accountActiveAdSummary".
*/
/**
* @typedef AccountPermission
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string[]} accountProfiles Account profiles associated with this account permission.
Possible values are:
- "ACCOUNT_PROFILE_BASIC"
- "ACCOUNT_PROFILE_STANDARD"
* @property {string} id ID of this account permission.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#accountPermission".
* @property {string} level Administrative level required to enable this account permission.
* @property {string} name Name of this account permission.
* @property {string} permissionGroupId Permission group of this account permission.
*/
/**
* @typedef AccountPermissionGroup
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} id ID of this account permission group.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#accountPermissionGroup".
* @property {string} name Name of this account permission group.
*/
/**
* @typedef AccountPermissionGroupsListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).AccountPermissionGroup[]} accountPermissionGroups Account permission group collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#accountPermissionGroupsListResponse".
*/
/**
* @typedef AccountPermissionsListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).AccountPermission[]} accountPermissions Account permission collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#accountPermissionsListResponse".
*/
/**
* @typedef AccountUserProfile
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} accountId Account ID of the user profile. This is a read-only field that can be left blank.
* @property {boolean} active Whether this user profile is active. This defaults to false, and must be set true on insert for the user profile to be usable.
* @property {dfareporting(v2.7).ObjectFilter} advertiserFilter Filter that describes which advertisers are visible to the user profile.
* @property {dfareporting(v2.7).ObjectFilter} campaignFilter Filter that describes which campaigns are visible to the user profile.
* @property {string} comments Comments for this user profile.
* @property {string} email Email of the user profile. The email addresss must be linked to a Google Account. This field is required on insertion and is read-only after insertion.
* @property {string} id ID of the user profile. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#accountUserProfile".
* @property {string} locale Locale of the user profile. This is a required field.
Acceptable values are:
- "cs" (Czech)
- "de" (German)
- "en" (English)
- "en-GB" (English United Kingdom)
- "es" (Spanish)
- "fr" (French)
- "it" (Italian)
- "ja" (Japanese)
- "ko" (Korean)
- "pl" (Polish)
- "pt-BR" (Portuguese Brazil)
- "ru" (Russian)
- "sv" (Swedish)
- "tr" (Turkish)
- "zh-CN" (Chinese Simplified)
- "zh-TW" (Chinese Traditional)
* @property {string} name Name of the user profile. This is a required field. Must be less than 64 characters long, must be globally unique, and cannot contain whitespace or any of the following characters: "&;"#%,".
* @property {dfareporting(v2.7).ObjectFilter} siteFilter Filter that describes which sites are visible to the user profile.
* @property {string} subaccountId Subaccount ID of the user profile. This is a read-only field that can be left blank.
* @property {string} traffickerType Trafficker type of this user profile.
* @property {string} userAccessType User type of the user profile. This is a read-only field that can be left blank.
* @property {dfareporting(v2.7).ObjectFilter} userRoleFilter Filter that describes which user roles are visible to the user profile.
* @property {string} userRoleId User role ID of the user profile. This is a required field.
*/
/**
* @typedef AccountUserProfilesListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).AccountUserProfile[]} accountUserProfiles Account user profile collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#accountUserProfilesListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
*/
/**
* @typedef AccountsListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).Account[]} accounts Account collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#accountsListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
*/
/**
* @typedef Activities
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).DimensionValue[]} filters List of activity filters. The dimension values need to be all either of type "dfa:activity" or "dfa:activityGroup".
* @property {string} kind The kind of resource this is, in this case dfareporting#activities.
* @property {string[]} metricNames List of names of floodlight activity metrics.
*/
/**
* @typedef Ad
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} accountId Account ID of this ad. This is a read-only field that can be left blank.
* @property {boolean} active Whether this ad is active. When true, archived must be false.
* @property {string} advertiserId Advertiser ID of this ad. This is a required field on insertion.
* @property {dfareporting(v2.7).DimensionValue} advertiserIdDimensionValue Dimension value for the ID of the advertiser. This is a read-only, auto-generated field.
* @property {boolean} archived Whether this ad is archived. When true, active must be false.
* @property {string} audienceSegmentId Audience segment ID that is being targeted for this ad. Applicable when type is AD_SERVING_STANDARD_AD.
* @property {string} campaignId Campaign ID of this ad. This is a required field on insertion.
* @property {dfareporting(v2.7).DimensionValue} campaignIdDimensionValue Dimension value for the ID of the campaign. This is a read-only, auto-generated field.
* @property {dfareporting(v2.7).ClickThroughUrl} clickThroughUrl Click-through URL for this ad. This is a required field on insertion. Applicable when type is AD_SERVING_CLICK_TRACKER.
* @property {dfareporting(v2.7).ClickThroughUrlSuffixProperties} clickThroughUrlSuffixProperties Click-through URL suffix properties for this ad. Applies to the URL in the ad or (if overriding ad properties) the URL in the creative.
* @property {string} comments Comments for this ad.
* @property {string} compatibility Compatibility of this ad. Applicable when type is AD_SERVING_DEFAULT_AD. DISPLAY and DISPLAY_INTERSTITIAL refer to either rendering on desktop or on mobile devices or in mobile apps for regular or interstitial ads, respectively. APP and APP_INTERSTITIAL are only used for existing default ads. New mobile placements must be assigned DISPLAY or DISPLAY_INTERSTITIAL and default ads created for those placements will be limited to those compatibility types. IN_STREAM_VIDEO refers to rendering in-stream video ads developed with the VAST standard.
* @property {dfareporting(v2.7).LastModifiedInfo} createInfo Information about the creation of this ad. This is a read-only field.
* @property {dfareporting(v2.7).CreativeGroupAssignment[]} creativeGroupAssignments Creative group assignments for this ad. Applicable when type is AD_SERVING_CLICK_TRACKER. Only one assignment per creative group number is allowed for a maximum of two assignments.
* @property {dfareporting(v2.7).CreativeRotation} creativeRotation Creative rotation for this ad. Applicable when type is AD_SERVING_DEFAULT_AD, AD_SERVING_STANDARD_AD, or AD_SERVING_TRACKING. When type is AD_SERVING_DEFAULT_AD, this field should have exactly one creativeAssignment.
* @property {dfareporting(v2.7).DayPartTargeting} dayPartTargeting Time and day targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD.
* @property {dfareporting(v2.7).DefaultClickThroughEventTagProperties} defaultClickThroughEventTagProperties Default click-through event tag properties for this ad.
* @property {dfareporting(v2.7).DeliverySchedule} deliverySchedule Delivery schedule information for this ad. Applicable when type is AD_SERVING_STANDARD_AD or AD_SERVING_TRACKING. This field along with subfields priority and impressionRatio are required on insertion when type is AD_SERVING_STANDARD_AD.
* @property {boolean} dynamicClickTracker Whether this ad is a dynamic click tracker. Applicable when type is AD_SERVING_CLICK_TRACKER. This is a required field on insert, and is read-only after insert.
* @property {string} endTime Date and time that this ad should stop serving. Must be later than the start time. This is a required field on insertion.
* @property {dfareporting(v2.7).EventTagOverride[]} eventTagOverrides Event tag overrides for this ad.
* @property {dfareporting(v2.7).GeoTargeting} geoTargeting Geographical targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD.
* @property {string} id ID of this ad. This is a read-only, auto-generated field.
* @property {dfareporting(v2.7).DimensionValue} idDimensionValue Dimension value for the ID of this ad. This is a read-only, auto-generated field.
* @property {dfareporting(v2.7).KeyValueTargetingExpression} keyValueTargetingExpression Key-value targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#ad".
* @property {dfareporting(v2.7).LanguageTargeting} languageTargeting Language targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD.
* @property {dfareporting(v2.7).LastModifiedInfo} lastModifiedInfo Information about the most recent modification of this ad. This is a read-only field.
* @property {string} name Name of this ad. This is a required field and must be less than 256 characters long.
* @property {dfareporting(v2.7).PlacementAssignment[]} placementAssignments Placement assignments for this ad.
* @property {dfareporting(v2.7).ListTargetingExpression} remarketingListExpression Remarketing list targeting expression for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD.
* @property {dfareporting(v2.7).Size} size Size of this ad. Applicable when type is AD_SERVING_DEFAULT_AD.
* @property {boolean} sslCompliant Whether this ad is ssl compliant. This is a read-only field that is auto-generated when the ad is inserted or updated.
* @property {boolean} sslRequired Whether this ad requires ssl. This is a read-only field that is auto-generated when the ad is inserted or updated.
* @property {string} startTime Date and time that this ad should start serving. If creating an ad, this field must be a time in the future. This is a required field on insertion.
* @property {string} subaccountId Subaccount ID of this ad. This is a read-only field that can be left blank.
* @property {string} targetingTemplateId Targeting template ID, used to apply preconfigured targeting information to this ad. This cannot be set while any of dayPartTargeting, geoTargeting, keyValueTargetingExpression, languageTargeting, remarketingListExpression, or technologyTargeting are set. Applicable when type is AD_SERVING_STANDARD_AD.
* @property {dfareporting(v2.7).TechnologyTargeting} technologyTargeting Technology platform targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD.
* @property {string} type Type of ad. This is a required field on insertion. Note that default ads (AD_SERVING_DEFAULT_AD) cannot be created directly (see Creative resource).
*/
/**
* @typedef AdSlot
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} comment Comment for this ad slot.
* @property {string} compatibility Ad slot compatibility. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop, mobile devices or in mobile apps for regular or interstitial ads respectively. APP and APP_INTERSTITIAL are for rendering in mobile apps. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard.
* @property {string} height Height of this ad slot.
* @property {string} linkedPlacementId ID of the placement from an external platform that is linked to this ad slot.
* @property {string} name Name of this ad slot.
* @property {string} paymentSourceType Payment source type of this ad slot.
* @property {boolean} primary Primary ad slot of a roadblock inventory item.
* @property {string} width Width of this ad slot.
*/
/**
* @typedef AdsListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).Ad[]} ads Ad collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#adsListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
*/
/**
* @typedef Advertiser
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} accountId Account ID of this advertiser.This is a read-only field that can be left blank.
* @property {string} advertiserGroupId ID of the advertiser group this advertiser belongs to. You can group advertisers for reporting purposes, allowing you to see aggregated information for all advertisers in each group.
* @property {string} clickThroughUrlSuffix Suffix added to click-through URL of ad creative associations under this advertiser. Must be less than 129 characters long.
* @property {string} defaultClickThroughEventTagId ID of the click-through event tag to apply by default to the landing pages of this advertiser's campaigns.
* @property {string} defaultEmail Default email address used in sender field for tag emails.
* @property {string} floodlightConfigurationId Floodlight configuration ID of this advertiser. The floodlight configuration ID will be created automatically, so on insert this field should be left blank. This field can be set to another advertiser's floodlight configuration ID in order to share that advertiser's floodlight configuration with this advertiser, so long as:
- This advertiser's original floodlight configuration is not already associated with floodlight activities or floodlight activity groups.
- This advertiser's original floodlight configuration is not already shared with another advertiser.
* @property {dfareporting(v2.7).DimensionValue} floodlightConfigurationIdDimensionValue Dimension value for the ID of the floodlight configuration. This is a read-only, auto-generated field.
* @property {string} id ID of this advertiser. This is a read-only, auto-generated field.
* @property {dfareporting(v2.7).DimensionValue} idDimensionValue Dimension value for the ID of this advertiser. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#advertiser".
* @property {string} name Name of this advertiser. This is a required field and must be less than 256 characters long and unique among advertisers of the same account.
* @property {string} originalFloodlightConfigurationId Original floodlight configuration before any sharing occurred. Set the floodlightConfigurationId of this advertiser to originalFloodlightConfigurationId to unshare the advertiser's current floodlight configuration. You cannot unshare an advertiser's floodlight configuration if the shared configuration has activities associated with any campaign or placement.
* @property {string} status Status of this advertiser.
* @property {string} subaccountId Subaccount ID of this advertiser.This is a read-only field that can be left blank.
* @property {boolean} suspended Suspension status of this advertiser.
*/
/**
* @typedef AdvertiserGroup
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} accountId Account ID of this advertiser group. This is a read-only field that can be left blank.
* @property {string} id ID of this advertiser group. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#advertiserGroup".
* @property {string} name Name of this advertiser group. This is a required field and must be less than 256 characters long and unique among advertiser groups of the same account.
*/
/**
* @typedef AdvertiserGroupsListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).AdvertiserGroup[]} advertiserGroups Advertiser group collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#advertiserGroupsListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
*/
/**
* @typedef AdvertisersListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).Advertiser[]} advertisers Advertiser collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#advertisersListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
*/
/**
* @typedef AudienceSegment
* @memberOf! dfareporting(v2.7)
* @type object
* @property {integer} allocation Weight allocated to this segment. Must be between 1 and 1000. The weight assigned will be understood in proportion to the weights assigned to other segments in the same segment group.
* @property {string} id ID of this audience segment. This is a read-only, auto-generated field.
* @property {string} name Name of this audience segment. This is a required field and must be less than 65 characters long.
*/
/**
* @typedef AudienceSegmentGroup
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).AudienceSegment[]} audienceSegments Audience segments assigned to this group. The number of segments must be between 2 and 100.
* @property {string} id ID of this audience segment group. This is a read-only, auto-generated field.
* @property {string} name Name of this audience segment group. This is a required field and must be less than 65 characters long.
*/
/**
* @typedef Browser
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} browserVersionId ID referring to this grouping of browser and version numbers. This is the ID used for targeting.
* @property {string} dartId DART ID of this browser. This is the ID used when generating reports.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#browser".
* @property {string} majorVersion Major version number (leftmost number) of this browser. For example, for Chrome 5.0.376.86 beta, this field should be set to 5. An asterisk (*) may be used to target any version number, and a question mark (?) may be used to target cases where the version number cannot be identified. For example, Chrome *.* targets any version of Chrome: 1.2, 2.5, 3.5, and so on. Chrome 3.* targets Chrome 3.1, 3.5, but not 4.0. Firefox ?.? targets cases where the ad server knows the browser is Firefox but can't tell which version it is.
* @property {string} minorVersion Minor version number (number after first dot on left) of this browser. For example, for Chrome 5.0.375.86 beta, this field should be set to 0. An asterisk (*) may be used to target any version number, and a question mark (?) may be used to target cases where the version number cannot be identified. For example, Chrome *.* targets any version of Chrome: 1.2, 2.5, 3.5, and so on. Chrome 3.* targets Chrome 3.1, 3.5, but not 4.0. Firefox ?.? targets cases where the ad server knows the browser is Firefox but can't tell which version it is.
* @property {string} name Name of this browser.
*/
/**
* @typedef BrowsersListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).Browser[]} browsers Browser collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#browsersListResponse".
*/
/**
* @typedef Campaign
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} accountId Account ID of this campaign. This is a read-only field that can be left blank.
* @property {dfareporting(v2.7).CreativeOptimizationConfiguration[]} additionalCreativeOptimizationConfigurations Additional creative optimization configurations for the campaign.
* @property {string} advertiserGroupId Advertiser group ID of the associated advertiser.
* @property {string} advertiserId Advertiser ID of this campaign. This is a required field.
* @property {dfareporting(v2.7).DimensionValue} advertiserIdDimensionValue Dimension value for the advertiser ID of this campaign. This is a read-only, auto-generated field.
* @property {boolean} archived Whether this campaign has been archived.
* @property {dfareporting(v2.7).AudienceSegmentGroup[]} audienceSegmentGroups Audience segment groups assigned to this campaign. Cannot have more than 300 segment groups.
* @property {string} billingInvoiceCode Billing invoice code included in the DCM client billing invoices associated with the campaign.
* @property {dfareporting(v2.7).ClickThroughUrlSuffixProperties} clickThroughUrlSuffixProperties Click-through URL suffix override properties for this campaign.
* @property {string} comment Arbitrary comments about this campaign. Must be less than 256 characters long.
* @property {dfareporting(v2.7).LastModifiedInfo} createInfo Information about the creation of this campaign. This is a read-only field.
* @property {string[]} creativeGroupIds List of creative group IDs that are assigned to the campaign.
* @property {dfareporting(v2.7).CreativeOptimizationConfiguration} creativeOptimizationConfiguration Creative optimization configuration for the campaign.
* @property {dfareporting(v2.7).DefaultClickThroughEventTagProperties} defaultClickThroughEventTagProperties Click-through event tag ID override properties for this campaign.
* @property {string} endDate Date on which the campaign will stop running. On insert, the end date must be today or a future date. The end date must be later than or be the same as the start date. If, for example, you set 6/25/2015 as both the start and end dates, the effective campaign run date is just that day only, 6/25/2015. The hours, minutes, and seconds of the end date should not be set, as doing so will result in an error. This is a required field.
* @property {dfareporting(v2.7).EventTagOverride[]} eventTagOverrides Overrides that can be used to activate or deactivate advertiser event tags.
* @property {string} externalId External ID for this campaign.
* @property {string} id ID of this campaign. This is a read-only auto-generated field.
* @property {dfareporting(v2.7).DimensionValue} idDimensionValue Dimension value for the ID of this campaign. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#campaign".
* @property {dfareporting(v2.7).LastModifiedInfo} lastModifiedInfo Information about the most recent modification of this campaign. This is a read-only field.
* @property {dfareporting(v2.7).LookbackConfiguration} lookbackConfiguration Lookback window settings for the campaign.
* @property {string} name Name of this campaign. This is a required field and must be less than 256 characters long and unique among campaigns of the same advertiser.
* @property {boolean} nielsenOcrEnabled Whether Nielsen reports are enabled for this campaign.
* @property {string} startDate Date on which the campaign starts running. The start date can be any date. The hours, minutes, and seconds of the start date should not be set, as doing so will result in an error. This is a required field.
* @property {string} subaccountId Subaccount ID of this campaign. This is a read-only field that can be left blank.
* @property {string[]} traffickerEmails Campaign trafficker contact emails.
*/
/**
* @typedef CampaignCreativeAssociation
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} creativeId ID of the creative associated with the campaign. This is a required field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#campaignCreativeAssociation".
*/
/**
* @typedef CampaignCreativeAssociationsListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).CampaignCreativeAssociation[]} campaignCreativeAssociations Campaign creative association collection
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#campaignCreativeAssociationsListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
*/
/**
* @typedef CampaignsListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).Campaign[]} campaigns Campaign collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#campaignsListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
*/
/**
* @typedef ChangeLog
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} accountId Account ID of the modified object.
* @property {string} action Action which caused the change.
* @property {string} changeTime Time when the object was modified.
* @property {string} fieldName Field name of the object which changed.
* @property {string} id ID of this change log.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#changeLog".
* @property {string} newValue New value of the object field.
* @property {string} objectId ID of the object of this change log. The object could be a campaign, placement, ad, or other type.
* @property {string} objectType Object type of the change log.
* @property {string} oldValue Old value of the object field.
* @property {string} subaccountId Subaccount ID of the modified object.
* @property {string} transactionId Transaction ID of this change log. When a single API call results in many changes, each change will have a separate ID in the change log but will share the same transactionId.
* @property {string} userProfileId ID of the user who modified the object.
* @property {string} userProfileName User profile name of the user who modified the object.
*/
/**
* @typedef ChangeLogsListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).ChangeLog[]} changeLogs Change log collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#changeLogsListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
*/
/**
* @typedef CitiesListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).City[]} cities City collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#citiesListResponse".
*/
/**
* @typedef City
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} countryCode Country code of the country to which this city belongs.
* @property {string} countryDartId DART ID of the country to which this city belongs.
* @property {string} dartId DART ID of this city. This is the ID used for targeting and generating reports.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#city".
* @property {string} metroCode Metro region code of the metro region (DMA) to which this city belongs.
* @property {string} metroDmaId ID of the metro region (DMA) to which this city belongs.
* @property {string} name Name of this city.
* @property {string} regionCode Region code of the region to which this city belongs.
* @property {string} regionDartId DART ID of the region to which this city belongs.
*/
/**
* @typedef ClickTag
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} eventName Advertiser event name associated with the click tag. This field is used by DISPLAY_IMAGE_GALLERY and HTML5_BANNER creatives. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.
* @property {string} name Parameter name for the specified click tag. For DISPLAY_IMAGE_GALLERY creative assets, this field must match the value of the creative asset's creativeAssetId.name field.
* @property {string} value Parameter value for the specified click tag. This field contains a click-through url.
*/
/**
* @typedef ClickThroughUrl
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} computedClickThroughUrl Read-only convenience field representing the actual URL that will be used for this click-through. The URL is computed as follows:
- If defaultLandingPage is enabled then the campaign's default landing page URL is assigned to this field.
- If defaultLandingPage is not enabled and a landingPageId is specified then that landing page's URL is assigned to this field.
- If neither of the above cases apply, then the customClickThroughUrl is assigned to this field.
* @property {string} customClickThroughUrl Custom click-through URL. Applicable if the defaultLandingPage field is set to false and the landingPageId field is left unset.
* @property {boolean} defaultLandingPage Whether the campaign default landing page is used.
* @property {string} landingPageId ID of the landing page for the click-through URL. Applicable if the defaultLandingPage field is set to false.
*/
/**
* @typedef ClickThroughUrlSuffixProperties
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} clickThroughUrlSuffix Click-through URL suffix to apply to all ads in this entity's scope. Must be less than 128 characters long.
* @property {boolean} overrideInheritedSuffix Whether this entity should override the inherited click-through URL suffix with its own defined value.
*/
/**
* @typedef CompanionClickThroughOverride
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).ClickThroughUrl} clickThroughUrl Click-through URL of this companion click-through override.
* @property {string} creativeId ID of the creative for this companion click-through override.
*/
/**
* @typedef CompanionSetting
* @memberOf! dfareporting(v2.7)
* @type object
* @property {boolean} companionsDisabled Whether companions are disabled for this placement.
* @property {dfareporting(v2.7).Size[]} enabledSizes Whitelist of companion sizes to be served to this placement. Set this list to null or empty to serve all companion sizes.
* @property {boolean} imageOnly Whether to serve only static images as companions.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#companionSetting".
*/
/**
* @typedef CompatibleFields
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).CrossDimensionReachReportCompatibleFields} crossDimensionReachReportCompatibleFields Contains items that are compatible to be selected for a report of type "CROSS_DIMENSION_REACH".
* @property {dfareporting(v2.7).FloodlightReportCompatibleFields} floodlightReportCompatibleFields Contains items that are compatible to be selected for a report of type "FLOODLIGHT".
* @property {string} kind The kind of resource this is, in this case dfareporting#compatibleFields.
* @property {dfareporting(v2.7).PathToConversionReportCompatibleFields} pathToConversionReportCompatibleFields Contains items that are compatible to be selected for a report of type "PATH_TO_CONVERSION".
* @property {dfareporting(v2.7).ReachReportCompatibleFields} reachReportCompatibleFields Contains items that are compatible to be selected for a report of type "REACH".
* @property {dfareporting(v2.7).ReportCompatibleFields} reportCompatibleFields Contains items that are compatible to be selected for a report of type "STANDARD".
*/
/**
* @typedef ConnectionType
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} id ID of this connection type.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#connectionType".
* @property {string} name Name of this connection type.
*/
/**
* @typedef ConnectionTypesListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).ConnectionType[]} connectionTypes Collection of connection types such as broadband and mobile.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#connectionTypesListResponse".
*/
/**
* @typedef ContentCategoriesListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).ContentCategory[]} contentCategories Content category collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#contentCategoriesListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
*/
/**
* @typedef ContentCategory
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} accountId Account ID of this content category. This is a read-only field that can be left blank.
* @property {string} id ID of this content category. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#contentCategory".
* @property {string} name Name of this content category. This is a required field and must be less than 256 characters long and unique among content categories of the same account.
*/
/**
* @typedef Conversion
* @memberOf! dfareporting(v2.7)
* @type object
* @property {boolean} childDirectedTreatment Whether the conversion was directed toward children.
* @property {dfareporting(v2.7).CustomFloodlightVariable[]} customVariables Custom floodlight variables.
* @property {string} encryptedUserId The alphanumeric encrypted user ID. When set, encryptionInfo should also be specified. This field is mutually exclusive with encryptedUserIdCandidates[] and mobileDeviceId. This or encryptedUserIdCandidates[] or mobileDeviceId is a required field.
* @property {string[]} encryptedUserIdCandidates A list of the alphanumeric encrypted user IDs. Any user ID with exposure prior to the conversion timestamp will be used in the inserted conversion. If no such user ID is found then the conversion will be rejected with NO_COOKIE_MATCH_FOUND error. When set, encryptionInfo should also be specified. This field should only be used when calling conversions.batchinsert. This field is mutually exclusive with encryptedUserId and mobileDeviceId. This or encryptedUserId or mobileDeviceId is a required field.
* @property {string} floodlightActivityId Floodlight Activity ID of this conversion. This is a required field.
* @property {string} floodlightConfigurationId Floodlight Configuration ID of this conversion. This is a required field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#conversion".
* @property {boolean} limitAdTracking Whether Limit Ad Tracking is enabled. When set to true, the conversion will be used for reporting but not targeting. This will prevent remarketing.
* @property {string} mobileDeviceId The mobile device ID. This field is mutually exclusive with encryptedUserId and encryptedUserIdCandidates[]. This or encryptedUserId or encryptedUserIdCandidates[] is a required field.
* @property {string} ordinal The ordinal of the conversion. Use this field to control how conversions of the same user and day are de-duplicated. This is a required field.
* @property {string} quantity The quantity of the conversion.
* @property {string} timestampMicros The timestamp of conversion, in Unix epoch micros. This is a required field.
* @property {number} value The value of the conversion.
*/
/**
* @typedef ConversionError
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} code The error code.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#conversionError".
* @property {string} message A description of the error.
*/
/**
* @typedef ConversionStatus
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).Conversion} conversion The original conversion that was inserted or updated.
* @property {dfareporting(v2.7).ConversionError[]} errors A list of errors related to this conversion.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#conversionStatus".
*/
/**
* @typedef ConversionsBatchInsertRequest
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).Conversion[]} conversions The set of conversions to insert.
* @property {dfareporting(v2.7).EncryptionInfo} encryptionInfo Describes how encryptedUserId or encryptedUserIdCandidates[] is encrypted. This is a required field if encryptedUserId or encryptedUserIdCandidates[] is used.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#conversionsBatchInsertRequest".
*/
/**
* @typedef ConversionsBatchInsertResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {boolean} hasFailures Indicates that some or all conversions failed to insert.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#conversionsBatchInsertResponse".
* @property {dfareporting(v2.7).ConversionStatus[]} status The status of each conversion's insertion status. The status is returned in the same order that conversions are inserted.
*/
/**
* @typedef CountriesListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).Country[]} countries Country collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#countriesListResponse".
*/
/**
* @typedef Country
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} countryCode Country code.
* @property {string} dartId DART ID of this country. This is the ID used for targeting and generating reports.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#country".
* @property {string} name Name of this country.
* @property {boolean} sslEnabled Whether ad serving supports secure servers in this country.
*/
/**
* @typedef Creative
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} accountId Account ID of this creative. This field, if left unset, will be auto-generated for both insert and update operations. Applicable to all creative types.
* @property {boolean} active Whether the creative is active. Applicable to all creative types.
* @property {string} adParameters Ad parameters user for VPAID creative. This is a read-only field. Applicable to the following creative types: all VPAID.
* @property {string[]} adTagKeys Keywords for a Rich Media creative. Keywords let you customize the creative settings of a Rich Media ad running on your site without having to contact the advertiser. You can use keywords to dynamically change the look or functionality of a creative. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.
* @property {string} advertiserId Advertiser ID of this creative. This is a required field. Applicable to all creative types.
* @property {boolean} allowScriptAccess Whether script access is allowed for this creative. This is a read-only and deprecated field which will automatically be set to true on update. Applicable to the following creative types: FLASH_INPAGE.
* @property {boolean} archived Whether the creative is archived. Applicable to all creative types.
* @property {string} artworkType Type of artwork used for the creative. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.
* @property {string} authoringSource Source application where creative was authored. Presently, only DBM authored creatives will have this field set. Applicable to all creative types.
* @property {string} authoringTool Authoring tool for HTML5 banner creatives. This is a read-only field. Applicable to the following creative types: HTML5_BANNER.
* @property {boolean} auto_advance_images Whether images are automatically advanced for image gallery creatives. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY.
* @property {string} backgroundColor The 6-character HTML color code, beginning with #, for the background of the window area where the Flash file is displayed. Default is white. Applicable to the following creative types: FLASH_INPAGE.
* @property {string} backupImageClickThroughUrl Click-through URL for backup image. Applicable to the following creative types: FLASH_INPAGE and HTML5_BANNER. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.
* @property {string[]} backupImageFeatures List of feature dependencies that will cause a backup image to be served if the browser that serves the ad does not support them. Feature dependencies are features that a browser must be able to support in order to render your HTML5 creative asset correctly. This field is initially auto-generated to contain all features detected by DCM for all the assets of this creative and can then be modified by the client. To reset this field, copy over all the creativeAssets' detected features. Applicable to the following creative types: HTML5_BANNER. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.
* @property {string} backupImageReportingLabel Reporting label used for HTML5 banner backup image. Applicable to the following creative types: DISPLAY when the primary asset type is not HTML_IMAGE.
* @property {dfareporting(v2.7).TargetWindow} backupImageTargetWindow Target window for backup image. Applicable to the following creative types: FLASH_INPAGE and HTML5_BANNER. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.
* @property {dfareporting(v2.7).ClickTag[]} clickTags Click tags of the creative. For DISPLAY, FLASH_INPAGE, and HTML5_BANNER creatives, this is a subset of detected click tags for the assets associated with this creative. After creating a flash asset, detected click tags will be returned in the creativeAssetMetadata. When inserting the creative, populate the creative clickTags field using the creativeAssetMetadata.clickTags field. For DISPLAY_IMAGE_GALLERY creatives, there should be exactly one entry in this list for each image creative asset. A click tag is matched with a corresponding creative asset by matching the clickTag.name field with the creativeAsset.assetIdentifier.name field. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY, FLASH_INPAGE, HTML5_BANNER. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.
* @property {string} commercialId Industry standard ID assigned to creative for reach and frequency. Applicable to the following creative types: all INSTREAM_VIDEO and all VPAID.
* @property {string[]} companionCreatives List of companion creatives assigned to an in-Stream videocreative. Acceptable values include IDs of existing flash and image creatives. Applicable to the following creative types: all VPAID and all INSTREAM_VIDEO with dynamicAssetSelection set to false.
* @property {string[]} compatibility Compatibilities associated with this creative. This is a read-only field. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop or on mobile devices or in mobile apps for regular or interstitial ads, respectively. APP and APP_INTERSTITIAL are for rendering in mobile apps. Only pre-existing creatives may have these compatibilities since new creatives will either be assigned DISPLAY or DISPLAY_INTERSTITIAL instead. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard. Applicable to all creative types.
Acceptable values are:
- "APP"
- "APP_INTERSTITIAL"
- "IN_STREAM_VIDEO"
- "DISPLAY"
- "DISPLAY_INTERSTITIAL"
* @property {boolean} convertFlashToHtml5 Whether Flash assets associated with the creative need to be automatically converted to HTML5. This flag is enabled by default and users can choose to disable it if they don't want the system to generate and use HTML5 asset for this creative. Applicable to the following creative type: FLASH_INPAGE. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.
* @property {dfareporting(v2.7).CreativeCustomEvent[]} counterCustomEvents List of counter events configured for the creative. For DISPLAY_IMAGE_GALLERY creatives, these are read-only and auto-generated from clickTags. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY, all RICH_MEDIA, and all VPAID.
* @property {dfareporting(v2.7).CreativeAssetSelection} creativeAssetSelection Required if dynamicAssetSelection is true.
* @property {dfareporting(v2.7).CreativeAsset[]} creativeAssets Assets associated with a creative. Applicable to all but the following creative types: INTERNAL_REDIRECT, INTERSTITIAL_INTERNAL_REDIRECT, and REDIRECT
* @property {dfareporting(v2.7).CreativeFieldAssignment[]} creativeFieldAssignments Creative field assignments for this creative. Applicable to all creative types.
* @property {string[]} customKeyValues Custom key-values for a Rich Media creative. Key-values let you customize the creative settings of a Rich Media ad running on your site without having to contact the advertiser. You can use key-values to dynamically change the look or functionality of a creative. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.
* @property {boolean} dynamicAssetSelection Set this to true to enable the use of rules to target individual assets in this creative. When set to true creativeAssetSelection must be set. This also controls asset-level companions. When this is true, companion creatives should be assigned to creative assets. Learn more. Applicable to INSTREAM_VIDEO creatives.
* @property {dfareporting(v2.7).CreativeCustomEvent[]} exitCustomEvents List of exit events configured for the creative. For DISPLAY and DISPLAY_IMAGE_GALLERY creatives, these are read-only and auto-generated from clickTags, For DISPLAY, an event is also created from the backupImageReportingLabel. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY, all RICH_MEDIA, and all VPAID. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.
* @property {dfareporting(v2.7).FsCommand} fsCommand OpenWindow FSCommand of this creative. This lets the SWF file communicate with either Flash Player or the program hosting Flash Player, such as a web browser. This is only triggered if allowScriptAccess field is true. Applicable to the following creative types: FLASH_INPAGE.
* @property {string} htmlCode HTML code for the creative. This is a required field when applicable. This field is ignored if htmlCodeLocked is false. Applicable to the following creative types: all CUSTOM, FLASH_INPAGE, and HTML5_BANNER, and all RICH_MEDIA.
* @property {boolean} htmlCodeLocked Whether HTML code is DCM-generated or manually entered. Set to true to ignore changes to htmlCode. Applicable to the following creative types: FLASH_INPAGE and HTML5_BANNER.
* @property {string} id ID of this creative. This is a read-only, auto-generated field. Applicable to all creative types.
* @property {dfareporting(v2.7).DimensionValue} idDimensionValue Dimension value for the ID of this creative. This is a read-only field. Applicable to all creative types.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#creative".
* @property {dfareporting(v2.7).LastModifiedInfo} lastModifiedInfo Creative last modification information. This is a read-only field. Applicable to all creative types.
* @property {string} latestTraffickedCreativeId Latest Studio trafficked creative ID associated with rich media and VPAID creatives. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.
* @property {string} name Name of the creative. This is a required field and must be less than 256 characters long. Applicable to all creative types.
* @property {string} overrideCss Override CSS value for rich media creatives. Applicable to the following creative types: all RICH_MEDIA.
* @property {dfareporting(v2.7).VideoOffset} progressOffset Amount of time to play the video before counting a view. Applicable to the following creative types: all INSTREAM_VIDEO.
* @property {string} redirectUrl URL of hosted image or hosted video or another ad tag. For INSTREAM_VIDEO_REDIRECT creatives this is the in-stream video redirect URL. The standard for a VAST (Video Ad Serving Template) ad response allows for a redirect link to another VAST 2.0 or 3.0 call. This is a required field when applicable. Applicable to the following creative types: DISPLAY_REDIRECT, INTERNAL_REDIRECT, INTERSTITIAL_INTERNAL_REDIRECT, and INSTREAM_VIDEO_REDIRECT
* @property {string} renderingId ID of current rendering version. This is a read-only field. Applicable to all creative types.
* @property {dfareporting(v2.7).DimensionValue} renderingIdDimensionValue Dimension value for the rendering ID of this creative. This is a read-only field. Applicable to all creative types.
* @property {string} requiredFlashPluginVersion The minimum required Flash plugin version for this creative. For example, 11.2.202.235. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.
* @property {integer} requiredFlashVersion The internal Flash version for this creative as calculated by DoubleClick Studio. This is a read-only field. Applicable to the following creative types: FLASH_INPAGE all RICH_MEDIA, and all VPAID. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.
* @property {dfareporting(v2.7).Size} size Size associated with this creative. When inserting or updating a creative either the size ID field or size width and height fields can be used. This is a required field when applicable; however for IMAGE, FLASH_INPAGE creatives, and for DISPLAY creatives with a primary asset of type HTML_IMAGE, if left blank, this field will be automatically set using the actual size of the associated image assets. Applicable to the following creative types: DISPLAY, DISPLAY_IMAGE_GALLERY, FLASH_INPAGE, HTML5_BANNER, IMAGE, and all RICH_MEDIA.
* @property {dfareporting(v2.7).VideoOffset} skipOffset Amount of time to play the video before the skip button appears. Applicable to the following creative types: all INSTREAM_VIDEO.
* @property {boolean} skippable Whether the user can choose to skip the creative. Applicable to the following creative types: all INSTREAM_VIDEO and all VPAID.
* @property {boolean} sslCompliant Whether the creative is SSL-compliant. This is a read-only field. Applicable to all creative types.
* @property {boolean} sslOverride Whether creative should be treated as SSL compliant even if the system scan shows it's not. Applicable to all creative types.
* @property {string} studioAdvertiserId Studio advertiser ID associated with rich media and VPAID creatives. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.
* @property {string} studioCreativeId Studio creative ID associated with rich media and VPAID creatives. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.
* @property {string} studioTraffickedCreativeId Studio trafficked creative ID associated with rich media and VPAID creatives. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.
* @property {string} subaccountId Subaccount ID of this creative. This field, if left unset, will be auto-generated for both insert and update operations. Applicable to all creative types.
* @property {string} thirdPartyBackupImageImpressionsUrl Third-party URL used to record backup image impressions. Applicable to the following creative types: all RICH_MEDIA.
* @property {string} thirdPartyRichMediaImpressionsUrl Third-party URL used to record rich media impressions. Applicable to the following creative types: all RICH_MEDIA.
* @property {dfareporting(v2.7).ThirdPartyTrackingUrl[]} thirdPartyUrls Third-party URLs for tracking in-stream video creative events. Applicable to the following creative types: all INSTREAM_VIDEO and all VPAID.
* @property {dfareporting(v2.7).CreativeCustomEvent[]} timerCustomEvents List of timer events configured for the creative. For DISPLAY_IMAGE_GALLERY creatives, these are read-only and auto-generated from clickTags. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY, all RICH_MEDIA, and all VPAID. Applicable to DISPLAY when the primary asset is not HTML_IMAGE.
* @property {string} totalFileSize Combined size of all creative assets. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.
* @property {string} type Type of this creative. This is a required field. Applicable to all creative types.
Note: FLASH_INPAGE, HTML5_BANNER, and IMAGE are only used for existing creatives. New creatives should use DISPLAY as a replacement for these types.
* @property {integer} version The version number helps you keep track of multiple versions of your creative in your reports. The version number will always be auto-generated during insert operations to start at 1. For tracking creatives the version cannot be incremented and will always remain at 1. For all other creative types the version can be incremented only by 1 during update operations. In addition, the version will be automatically incremented by 1 when undergoing Rich Media creative merging. Applicable to all creative types.
* @property {string} videoDescription Description of the video ad. Applicable to the following creative types: all INSTREAM_VIDEO and all VPAID.
* @property {number} videoDuration Creative video duration in seconds. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO, all RICH_MEDIA, and all VPAID.
*/
/**
* @typedef CreativeAsset
* @memberOf! dfareporting(v2.7)
* @type object
* @property {boolean} actionScript3 Whether ActionScript3 is enabled for the flash asset. This is a read-only field. Applicable to the following creative type: FLASH_INPAGE. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.
* @property {boolean} active Whether the video asset is active. This is a read-only field for VPAID_NON_LINEAR_VIDEO assets. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID.
* @property {string} alignment Possible alignments for an asset. This is a read-only field. Applicable to the following creative types: RICH_MEDIA_DISPLAY_MULTI_FLOATING_INTERSTITIAL.
* @property {string} artworkType Artwork type of rich media creative. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.
* @property {dfareporting(v2.7).CreativeAssetId} assetIdentifier Identifier of this asset. This is the same identifier returned during creative asset insert operation. This is a required field. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT.
* @property {dfareporting(v2.7).CreativeCustomEvent} backupImageExit Exit event configured for the backup image. Applicable to the following creative types: all RICH_MEDIA.
* @property {integer} bitRate Detected bit-rate for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID.
* @property {string} childAssetType Rich media child asset type. This is a read-only field. Applicable to the following creative types: all VPAID.
* @property {dfareporting(v2.7).Size} collapsedSize Size of an asset when collapsed. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA and all VPAID. Additionally, applicable to assets whose displayType is ASSET_DISPLAY_TYPE_EXPANDING or ASSET_DISPLAY_TYPE_PEEL_DOWN.
* @property {string[]} companionCreativeIds List of companion creatives assigned to an in-stream video creative asset. Acceptable values include IDs of existing flash and image creatives. Applicable to INSTREAM_VIDEO creative type with dynamicAssetSelection set to true.
* @property {integer} customStartTimeValue Custom start time in seconds for making the asset visible. Applicable to the following creative types: all RICH_MEDIA.
* @property {string[]} detectedFeatures List of feature dependencies for the creative asset that are detected by DCM. Feature dependencies are features that a browser must be able to support in order to render your HTML5 creative correctly. This is a read-only, auto-generated field. Applicable to the following creative types: HTML5_BANNER. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.
* @property {string} displayType Type of rich media asset. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.
* @property {integer} duration Duration in seconds for which an asset will be displayed. Applicable to the following creative types: INSTREAM_VIDEO and VPAID_LINEAR_VIDEO.
* @property {string} durationType Duration type for which an asset will be displayed. Applicable to the following creative types: all RICH_MEDIA.
* @property {dfareporting(v2.7).Size} expandedDimension Detected expanded dimension for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID.
* @property {string} fileSize File size associated with this creative asset. This is a read-only field. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT.
* @property {integer} flashVersion Flash version of the asset. This is a read-only field. Applicable to the following creative types: FLASH_INPAGE, all RICH_MEDIA, and all VPAID. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.
* @property {boolean} hideFlashObjects Whether to hide Flash objects flag for an asset. Applicable to the following creative types: all RICH_MEDIA.
* @property {boolean} hideSelectionBoxes Whether to hide selection boxes flag for an asset. Applicable to the following creative types: all RICH_MEDIA.
* @property {boolean} horizontallyLocked Whether the asset is horizontally locked. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.
* @property {string} id Numeric ID of this creative asset. This is a required field and should not be modified. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT.
* @property {dfareporting(v2.7).DimensionValue} idDimensionValue Dimension value for the ID of the asset. This is a read-only, auto-generated field.
* @property {string} mimeType Detected MIME type for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID.
* @property {dfareporting(v2.7).OffsetPosition} offset Offset position for an asset in collapsed mode. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA and all VPAID. Additionally, only applicable to assets whose displayType is ASSET_DISPLAY_TYPE_EXPANDING or ASSET_DISPLAY_TYPE_PEEL_DOWN.
* @property {boolean} originalBackup Whether the backup asset is original or changed by the user in DCM. Applicable to the following creative types: all RICH_MEDIA.
* @property {dfareporting(v2.7).OffsetPosition} position Offset position for an asset. Applicable to the following creative types: all RICH_MEDIA.
* @property {string} positionLeftUnit Offset left unit for an asset. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.
* @property {string} positionTopUnit Offset top unit for an asset. This is a read-only field if the asset displayType is ASSET_DISPLAY_TYPE_OVERLAY. Applicable to the following creative types: all RICH_MEDIA.
* @property {string} progressiveServingUrl Progressive URL for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID.
* @property {boolean} pushdown Whether the asset pushes down other content. Applicable to the following creative types: all RICH_MEDIA. Additionally, only applicable when the asset offsets are 0, the collapsedSize.width matches size.width, and the collapsedSize.height is less than size.height.
* @property {number} pushdownDuration Pushdown duration in seconds for an asset. Must be between 0 and 9.99. Applicable to the following creative types: all RICH_MEDIA.Additionally, only applicable when the asset pushdown field is true, the offsets are 0, the collapsedSize.width matches size.width, and the collapsedSize.height is less than size.height.
* @property {string} role Role of the asset in relation to creative. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT. This is a required field.
PRIMARY applies to DISPLAY, FLASH_INPAGE, HTML5_BANNER, IMAGE, DISPLAY_IMAGE_GALLERY, all RICH_MEDIA (which may contain multiple primary assets), and all VPAID creatives.
BACKUP_IMAGE applies to FLASH_INPAGE, HTML5_BANNER, all RICH_MEDIA, and all VPAID creatives. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.
ADDITIONAL_IMAGE and ADDITIONAL_FLASH apply to FLASH_INPAGE creatives.
OTHER refers to assets from sources other than DCM, such as Studio uploaded assets, applicable to all RICH_MEDIA and all VPAID creatives.
PARENT_VIDEO refers to videos uploaded by the user in DCM and is applicable to INSTREAM_VIDEO and VPAID_LINEAR_VIDEO creatives.
TRANSCODED_VIDEO refers to videos transcoded by DCM from PARENT_VIDEO assets and is applicable to INSTREAM_VIDEO and VPAID_LINEAR_VIDEO creatives.
ALTERNATE_VIDEO refers to the DCM representation of child asset videos from Studio, and is applicable to VPAID_LINEAR_VIDEO creatives. These cannot be added or removed within DCM.
For VPAID_LINEAR_VIDEO creatives, PARENT_VIDEO, TRANSCODED_VIDEO and ALTERNATE_VIDEO assets that are marked active serve as backup in case the VPAID creative cannot be served. Only PARENT_VIDEO assets can be added or removed for an INSTREAM_VIDEO or VPAID_LINEAR_VIDEO creative.
* @property {dfareporting(v2.7).Size} size Size associated with this creative asset. This is a required field when applicable; however for IMAGE and FLASH_INPAGE, creatives if left blank, this field will be automatically set using the actual size of the associated image asset. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY, FLASH_INPAGE, HTML5_BANNER, IMAGE, and all RICH_MEDIA. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.
* @property {boolean} sslCompliant Whether the asset is SSL-compliant. This is a read-only field. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT.
* @property {string} startTimeType Initial wait time type before making the asset visible. Applicable to the following creative types: all RICH_MEDIA.
* @property {string} streamingServingUrl Streaming URL for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID.
* @property {boolean} transparency Whether the asset is transparent. Applicable to the following creative types: all RICH_MEDIA. Additionally, only applicable to HTML5 assets.
* @property {boolean} verticallyLocked Whether the asset is vertically locked. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.
* @property {number} videoDuration Detected video duration for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID.
* @property {string} windowMode Window mode options for flash assets. Applicable to the following creative types: FLASH_INPAGE, RICH_MEDIA_DISPLAY_EXPANDING, RICH_MEDIA_IM_EXPAND, RICH_MEDIA_DISPLAY_BANNER, and RICH_MEDIA_INPAGE_FLOATING.
* @property {integer} zIndex zIndex value of an asset. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.Additionally, only applicable to assets whose displayType is NOT one of the following types: ASSET_DISPLAY_TYPE_INPAGE or ASSET_DISPLAY_TYPE_OVERLAY.
* @property {string} zipFilename File name of zip file. This is a read-only field. Applicable to the following creative types: HTML5_BANNER.
* @property {string} zipFilesize Size of zip file. This is a read-only field. Applicable to the following creative types: HTML5_BANNER.
*/
/**
* @typedef CreativeAssetId
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} name Name of the creative asset. This is a required field while inserting an asset. After insertion, this assetIdentifier is used to identify the uploaded asset. Characters in the name must be alphanumeric or one of the following: ".-_ ". Spaces are allowed.
* @property {string} type Type of asset to upload. This is a required field. FLASH and IMAGE are no longer supported for new uploads. All image assets should use HTML_IMAGE.
*/
/**
* @typedef CreativeAssetMetadata
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).CreativeAssetId} assetIdentifier ID of the creative asset. This is a required field.
* @property {dfareporting(v2.7).ClickTag[]} clickTags List of detected click tags for assets. This is a read-only auto-generated field.
* @property {string[]} detectedFeatures List of feature dependencies for the creative asset that are detected by DCM. Feature dependencies are features that a browser must be able to support in order to render your HTML5 creative correctly. This is a read-only, auto-generated field.
* @property {string} id Numeric ID of the asset. This is a read-only, auto-generated field.
* @property {dfareporting(v2.7).DimensionValue} idDimensionValue Dimension value for the numeric ID of the asset. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#creativeAssetMetadata".
* @property {string[]} warnedValidationRules Rules validated during code generation that generated a warning. This is a read-only, auto-generated field.
Possible values are:
- "ADMOB_REFERENCED"
- "ASSET_FORMAT_UNSUPPORTED_DCM"
- "ASSET_INVALID"
- "CLICK_TAG_HARD_CODED"
- "CLICK_TAG_INVALID"
- "CLICK_TAG_IN_GWD"
- "CLICK_TAG_MISSING"
- "CLICK_TAG_MORE_THAN_ONE"
- "CLICK_TAG_NON_TOP_LEVEL"
- "COMPONENT_UNSUPPORTED_DCM"
- "ENABLER_UNSUPPORTED_METHOD_DCM"
- "EXTERNAL_FILE_REFERENCED"
- "FILE_DETAIL_EMPTY"
- "FILE_TYPE_INVALID"
- "GWD_PROPERTIES_INVALID"
- "HTML5_FEATURE_UNSUPPORTED"
- "LINKED_FILE_NOT_FOUND"
- "MAX_FLASH_VERSION_11"
- "MRAID_REFERENCED"
- "NOT_SSL_COMPLIANT"
- "ORPHANED_ASSET"
- "PRIMARY_HTML_MISSING"
- "SVG_INVALID"
- "ZIP_INVALID"
*/
/**
* @typedef CreativeAssetSelection
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} defaultAssetId A creativeAssets[].id. This should refer to one of the parent assets in this creative, and will be served if none of the rules match. This is a required field.
* @property {dfareporting(v2.7).Rule[]} rules Rules determine which asset will be served to a viewer. Rules will be evaluated in the order in which they are stored in this list. This list must contain at least one rule. Applicable to INSTREAM_VIDEO creatives.
*/
/**
* @typedef CreativeAssignment
* @memberOf! dfareporting(v2.7)
* @type object
* @property {boolean} active Whether this creative assignment is active. When true, the creative will be included in the ad's rotation.
* @property {boolean} applyEventTags Whether applicable event tags should fire when this creative assignment is rendered. If this value is unset when the ad is inserted or updated, it will default to true for all creative types EXCEPT for INTERNAL_REDIRECT, INTERSTITIAL_INTERNAL_REDIRECT, and INSTREAM_VIDEO.
* @property {dfareporting(v2.7).ClickThroughUrl} clickThroughUrl Click-through URL of the creative assignment.
* @property {dfareporting(v2.7).CompanionClickThroughOverride[]} companionCreativeOverrides Companion creative overrides for this creative assignment. Applicable to video ads.
* @property {dfareporting(v2.7).CreativeGroupAssignment[]} creativeGroupAssignments Creative group assignments for this creative assignment. Only one assignment per creative group number is allowed for a maximum of two assignments.
* @property {string} creativeId ID of the creative to be assigned. This is a required field.
* @property {dfareporting(v2.7).DimensionValue} creativeIdDimensionValue Dimension value for the ID of the creative. This is a read-only, auto-generated field.
* @property {string} endTime Date and time that the assigned creative should stop serving. Must be later than the start time.
* @property {dfareporting(v2.7).RichMediaExitOverride[]} richMediaExitOverrides Rich media exit overrides for this creative assignment.
Applicable when the creative type is any of the following:
- RICH_MEDIA_INPAGE
- RICH_MEDIA_INPAGE_FLOATING
- RICH_MEDIA_IM_EXPAND
- RICH_MEDIA_EXPANDING
- RICH_MEDIA_INTERSTITIAL_FLOAT
- RICH_MEDIA_MOBILE_IN_APP
- RICH_MEDIA_MULTI_FLOATING
- RICH_MEDIA_PEEL_DOWN
- ADVANCED_BANNER
- VPAID_LINEAR
- VPAID_NON_LINEAR
* @property {integer} sequence Sequence number of the creative assignment, applicable when the rotation type is CREATIVE_ROTATION_TYPE_SEQUENTIAL.
* @property {boolean} sslCompliant Whether the creative to be assigned is SSL-compliant. This is a read-only field that is auto-generated when the ad is inserted or updated.
* @property {string} startTime Date and time that the assigned creative should start serving.
* @property {integer} weight Weight of the creative assignment, applicable when the rotation type is CREATIVE_ROTATION_TYPE_RANDOM.
*/
/**
* @typedef CreativeCustomEvent
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} advertiserCustomEventId Unique ID of this event used by DDM Reporting and Data Transfer. This is a read-only field.
* @property {string} advertiserCustomEventName User-entered name for the event.
* @property {string} advertiserCustomEventType Type of the event. This is a read-only field.
* @property {string} artworkLabel Artwork label column, used to link events in DCM back to events in Studio. This is a required field and should not be modified after insertion.
* @property {string} artworkType Artwork type used by the creative.This is a read-only field.
* @property {string} exitUrl Exit URL of the event. This field is used only for exit events.
* @property {string} id ID of this event. This is a required field and should not be modified after insertion.
* @property {dfareporting(v2.7).PopupWindowProperties} popupWindowProperties Properties for rich media popup windows. This field is used only for exit events.
* @property {string} targetType Target type used by the event.
* @property {string} videoReportingId Video reporting ID, used to differentiate multiple videos in a single creative. This is a read-only field.
*/
/**
* @typedef CreativeField
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} accountId Account ID of this creative field. This is a read-only field that can be left blank.
* @property {string} advertiserId Advertiser ID of this creative field. This is a required field on insertion.
* @property {dfareporting(v2.7).DimensionValue} advertiserIdDimensionValue Dimension value for the ID of the advertiser. This is a read-only, auto-generated field.
* @property {string} id ID of this creative field. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#creativeField".
* @property {string} name Name of this creative field. This is a required field and must be less than 256 characters long and unique among creative fields of the same advertiser.
* @property {string} subaccountId Subaccount ID of this creative field. This is a read-only field that can be left blank.
*/
/**
* @typedef CreativeFieldAssignment
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} creativeFieldId ID of the creative field.
* @property {string} creativeFieldValueId ID of the creative field value.
*/
/**
* @typedef CreativeFieldValue
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} id ID of this creative field value. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#creativeFieldValue".
* @property {string} value Value of this creative field value. It needs to be less than 256 characters in length and unique per creative field.
*/
/**
* @typedef CreativeFieldValuesListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).CreativeFieldValue[]} creativeFieldValues Creative field value collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#creativeFieldValuesListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
*/
/**
* @typedef CreativeFieldsListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).CreativeField[]} creativeFields Creative field collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#creativeFieldsListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
*/
/**
* @typedef CreativeGroup
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} accountId Account ID of this creative group. This is a read-only field that can be left blank.
* @property {string} advertiserId Advertiser ID of this creative group. This is a required field on insertion.
* @property {dfareporting(v2.7).DimensionValue} advertiserIdDimensionValue Dimension value for the ID of the advertiser. This is a read-only, auto-generated field.
* @property {integer} groupNumber Subgroup of the creative group. Assign your creative groups to one of the following subgroups in order to filter or manage them more easily. This field is required on insertion and is read-only after insertion.
Acceptable values are:
- 1
- 2
* @property {string} id ID of this creative group. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#creativeGroup".
* @property {string} name Name of this creative group. This is a required field and must be less than 256 characters long and unique among creative groups of the same advertiser.
* @property {string} subaccountId Subaccount ID of this creative group. This is a read-only field that can be left blank.
*/
/**
* @typedef CreativeGroupAssignment
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} creativeGroupId ID of the creative group to be assigned.
* @property {string} creativeGroupNumber Creative group number of the creative group assignment.
*/
/**
* @typedef CreativeGroupsListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).CreativeGroup[]} creativeGroups Creative group collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#creativeGroupsListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
*/
/**
* @typedef CreativeOptimizationConfiguration
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} id ID of this creative optimization config. This field is auto-generated when the campaign is inserted or updated. It can be null for existing campaigns.
* @property {string} name Name of this creative optimization config. This is a required field and must be less than 129 characters long.
* @property {dfareporting(v2.7).OptimizationActivity[]} optimizationActivitys List of optimization activities associated with this configuration.
* @property {string} optimizationModel Optimization model for this configuration.
*/
/**
* @typedef CreativeRotation
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).CreativeAssignment[]} creativeAssignments Creative assignments in this creative rotation.
* @property {string} creativeOptimizationConfigurationId Creative optimization configuration that is used by this ad. It should refer to one of the existing optimization configurations in the ad's campaign. If it is unset or set to 0, then the campaign's default optimization configuration will be used for this ad.
* @property {string} type Type of creative rotation. Can be used to specify whether to use sequential or random rotation.
* @property {string} weightCalculationStrategy Strategy for calculating weights. Used with CREATIVE_ROTATION_TYPE_RANDOM.
*/
/**
* @typedef CreativeSettings
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} iFrameFooter Header text for iFrames for this site. Must be less than or equal to 2000 characters long.
* @property {string} iFrameHeader Header text for iFrames for this site. Must be less than or equal to 2000 characters long.
*/
/**
* @typedef CreativesListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).Creative[]} creatives Creative collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#creativesListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
*/
/**
* @typedef CrossDimensionReachReportCompatibleFields
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).Dimension[]} breakdown Dimensions which are compatible to be selected in the "breakdown" section of the report.
* @property {dfareporting(v2.7).Dimension[]} dimensionFilters Dimensions which are compatible to be selected in the "dimensionFilters" section of the report.
* @property {string} kind The kind of resource this is, in this case dfareporting#crossDimensionReachReportCompatibleFields.
* @property {dfareporting(v2.7).Metric[]} metrics Metrics which are compatible to be selected in the "metricNames" section of the report.
* @property {dfareporting(v2.7).Metric[]} overlapMetrics Metrics which are compatible to be selected in the "overlapMetricNames" section of the report.
*/
/**
* @typedef CustomFloodlightVariable
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#customFloodlightVariable".
* @property {string} type The type of custom floodlight variable to supply a value for. These map to the "u[1-20]=" in the tags.
* @property {string} value The value of the custom floodlight variable. The length of string must not exceed 50 characters.
*/
/**
* @typedef CustomRichMediaEvents
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).DimensionValue[]} filteredEventIds List of custom rich media event IDs. Dimension values must be all of type dfa:richMediaEventTypeIdAndName.
* @property {string} kind The kind of resource this is, in this case dfareporting#customRichMediaEvents.
*/
/**
* @typedef DateRange
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} endDate The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
* @property {string} kind The kind of resource this is, in this case dfareporting#dateRange.
* @property {string} relativeDateRange The date range relative to the date of when the report is run.
* @property {string} startDate The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
*/
/**
* @typedef DayPartTargeting
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string[]} daysOfWeek Days of the week when the ad will serve.
Acceptable values are:
- "SUNDAY"
- "MONDAY"
- "TUESDAY"
- "WEDNESDAY"
- "THURSDAY"
- "FRIDAY"
- "SATURDAY"
* @property {integer[]} hoursOfDay Hours of the day when the ad will serve. Must be an integer between 0 and 23 (inclusive), where 0 is midnight to 1 AM, and 23 is 11 PM to midnight. Can be specified with days of week, in which case the ad would serve during these hours on the specified days. For example, if Monday, Wednesday, Friday are the days of week specified and 9-10am, 3-5pm (hours 9, 15, and 16) is specified, the ad would serve Monday, Wednesdays, and Fridays at 9-10am and 3-5pm.
* @property {boolean} userLocalTime Whether or not to use the user's local time. If false, the America/New York time zone applies.
*/
/**
* @typedef DefaultClickThroughEventTagProperties
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} defaultClickThroughEventTagId ID of the click-through event tag to apply to all ads in this entity's scope.
* @property {boolean} overrideInheritedEventTag Whether this entity should override the inherited default click-through event tag with its own defined value.
*/
/**
* @typedef DeliverySchedule
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).FrequencyCap} frequencyCap Limit on the number of times an individual user can be served the ad within a specified period of time.
* @property {boolean} hardCutoff Whether or not hard cutoff is enabled. If true, the ad will not serve after the end date and time. Otherwise the ad will continue to be served until it has reached its delivery goals.
* @property {string} impressionRatio Impression ratio for this ad. This ratio determines how often each ad is served relative to the others. For example, if ad A has an impression ratio of 1 and ad B has an impression ratio of 3, then DCM will serve ad B three times as often as ad A. Must be between 1 and 10.
* @property {string} priority Serving priority of an ad, with respect to other ads. The lower the priority number, the greater the priority with which it is served.
*/
/**
* @typedef DfpSettings
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} dfp_network_code DFP network code for this directory site.
* @property {string} dfp_network_name DFP network name for this directory site.
* @property {boolean} programmaticPlacementAccepted Whether this directory site accepts programmatic placements.
* @property {boolean} pubPaidPlacementAccepted Whether this directory site accepts publisher-paid tags.
* @property {boolean} publisherPortalOnly Whether this directory site is available only via DoubleClick Publisher Portal.
*/
/**
* @typedef Dimension
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} kind The kind of resource this is, in this case dfareporting#dimension.
* @property {string} name The dimension name, e.g. dfa:advertiser
*/
/**
* @typedef DimensionFilter
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} dimensionName The name of the dimension to filter.
* @property {string} kind The kind of resource this is, in this case dfareporting#dimensionFilter.
* @property {string} value The value of the dimension to filter.
*/
/**
* @typedef DimensionValue
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} dimensionName The name of the dimension.
* @property {string} etag The eTag of this response for caching purposes.
* @property {string} id The ID associated with the value if available.
* @property {string} kind The kind of resource this is, in this case dfareporting#dimensionValue.
* @property {string} matchType Determines how the 'value' field is matched when filtering. If not specified, defaults to EXACT. If set to WILDCARD_EXPRESSION, '*' is allowed as a placeholder for variable length character sequences, and it can be escaped with a backslash. Note, only paid search dimensions ('dfa:paidSearch*') allow a matchType other than EXACT.
* @property {string} value The value of the dimension.
*/
/**
* @typedef DimensionValueList
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} etag The eTag of this response for caching purposes.
* @property {dfareporting(v2.7).DimensionValue[]} items The dimension values returned in this response.
* @property {string} kind The kind of list this is, in this case dfareporting#dimensionValueList.
* @property {string} nextPageToken Continuation token used to page through dimension values. To retrieve the next page of results, set the next request's "pageToken" to the value of this field. The page token is only valid for a limited amount of time and should not be persisted.
*/
/**
* @typedef DimensionValueRequest
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} dimensionName The name of the dimension for which values should be requested.
* @property {string} endDate The end date of the date range for which to retrieve dimension values. A string of the format "yyyy-MM-dd".
* @property {dfareporting(v2.7).DimensionFilter[]} filters The list of filters by which to filter values. The filters are ANDed.
* @property {string} kind The kind of request this is, in this case dfareporting#dimensionValueRequest.
* @property {string} startDate The start date of the date range for which to retrieve dimension values. A string of the format "yyyy-MM-dd".
*/
/**
* @typedef DirectorySite
* @memberOf! dfareporting(v2.7)
* @type object
* @property {boolean} active Whether this directory site is active.
* @property {dfareporting(v2.7).DirectorySiteContactAssignment[]} contactAssignments Directory site contacts.
* @property {string} countryId Country ID of this directory site.
* @property {string} currencyId Currency ID of this directory site.
Possible values are:
- "1" for USD
- "2" for GBP
- "3" for ESP
- "4" for SEK
- "5" for CAD
- "6" for JPY
- "7" for DEM
- "8" for AUD
- "9" for FRF
- "10" for ITL
- "11" for DKK
- "12" for NOK
- "13" for FIM
- "14" for ZAR
- "15" for IEP
- "16" for NLG
- "17" for EUR
- "18" for KRW
- "19" for TWD
- "20" for SGD
- "21" for CNY
- "22" for HKD
- "23" for NZD
- "24" for MYR
- "25" for BRL
- "26" for PTE
- "27" for MXP
- "28" for CLP
- "29" for TRY
- "30" for ARS
- "31" for PEN
- "32" for ILS
- "33" for CHF
- "34" for VEF
- "35" for COP
- "36" for GTQ
- "37" for PLN
- "39" for INR
- "40" for THB
- "41" for IDR
- "42" for CZK
- "43" for RON
- "44" for HUF
- "45" for RUB
- "46" for AED
- "47" for BGN
- "48" for HRK
* @property {string} description Description of this directory site.
* @property {string} id ID of this directory site. This is a read-only, auto-generated field.
* @property {dfareporting(v2.7).DimensionValue} idDimensionValue Dimension value for the ID of this directory site. This is a read-only, auto-generated field.
* @property {string[]} inpageTagFormats Tag types for regular placements.
Acceptable values are:
- "STANDARD"
- "IFRAME_JAVASCRIPT_INPAGE"
- "INTERNAL_REDIRECT_INPAGE"
- "JAVASCRIPT_INPAGE"
* @property {string[]} interstitialTagFormats Tag types for interstitial placements.
Acceptable values are:
- "IFRAME_JAVASCRIPT_INTERSTITIAL"
- "INTERNAL_REDIRECT_INTERSTITIAL"
- "JAVASCRIPT_INTERSTITIAL"
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#directorySite".
* @property {string} name Name of this directory site.
* @property {string} parentId Parent directory site ID.
* @property {dfareporting(v2.7).DirectorySiteSettings} settings Directory site settings.
* @property {string} url URL of this directory site.
*/
/**
* @typedef DirectorySiteContact
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} address Address of this directory site contact.
* @property {string} email Email address of this directory site contact.
* @property {string} firstName First name of this directory site contact.
* @property {string} id ID of this directory site contact. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#directorySiteContact".
* @property {string} lastName Last name of this directory site contact.
* @property {string} phone Phone number of this directory site contact.
* @property {string} role Directory site contact role.
* @property {string} title Title or designation of this directory site contact.
* @property {string} type Directory site contact type.
*/
/**
* @typedef DirectorySiteContactAssignment
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} contactId ID of this directory site contact. This is a read-only, auto-generated field.
* @property {string} visibility Visibility of this directory site contact assignment. When set to PUBLIC this contact assignment is visible to all account and agency users; when set to PRIVATE it is visible only to the site.
*/
/**
* @typedef DirectorySiteContactsListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).DirectorySiteContact[]} directorySiteContacts Directory site contact collection
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#directorySiteContactsListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
*/
/**
* @typedef DirectorySiteSettings
* @memberOf! dfareporting(v2.7)
* @type object
* @property {boolean} activeViewOptOut Whether this directory site has disabled active view creatives.
* @property {dfareporting(v2.7).DfpSettings} dfp_settings Directory site DFP settings.
* @property {boolean} instream_video_placement_accepted Whether this site accepts in-stream video ads.
* @property {boolean} interstitialPlacementAccepted Whether this site accepts interstitial ads.
* @property {boolean} nielsenOcrOptOut Whether this directory site has disabled Nielsen OCR reach ratings.
* @property {boolean} verificationTagOptOut Whether this directory site has disabled generation of Verification ins tags.
* @property {boolean} videoActiveViewOptOut Whether this directory site has disabled active view for in-stream video creatives.
*/
/**
* @typedef DirectorySitesListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).DirectorySite[]} directorySites Directory site collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#directorySitesListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
*/
/**
* @typedef DynamicTargetingKey
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#dynamicTargetingKey".
* @property {string} name Name of this dynamic targeting key. This is a required field. Must be less than 256 characters long and cannot contain commas. All characters are converted to lowercase.
* @property {string} objectId ID of the object of this dynamic targeting key. This is a required field.
* @property {string} objectType Type of the object of this dynamic targeting key. This is a required field.
*/
/**
* @typedef DynamicTargetingKeysListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).DynamicTargetingKey[]} dynamicTargetingKeys Dynamic targeting key collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#dynamicTargetingKeysListResponse".
*/
/**
* @typedef EncryptionInfo
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} encryptionEntityId The encryption entity ID. This should match the encryption configuration for ad serving or Data Transfer.
* @property {string} encryptionEntityType The encryption entity type. This should match the encryption configuration for ad serving or Data Transfer.
* @property {string} encryptionSource Describes whether the encrypted cookie was received from ad serving (the %m macro) or from Data Transfer.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#encryptionInfo".
*/
/**
* @typedef EventTag
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} accountId Account ID of this event tag. This is a read-only field that can be left blank.
* @property {string} advertiserId Advertiser ID of this event tag. This field or the campaignId field is required on insertion.
* @property {dfareporting(v2.7).DimensionValue} advertiserIdDimensionValue Dimension value for the ID of the advertiser. This is a read-only, auto-generated field.
* @property {string} campaignId Campaign ID of this event tag. This field or the advertiserId field is required on insertion.
* @property {dfareporting(v2.7).DimensionValue} campaignIdDimensionValue Dimension value for the ID of the campaign. This is a read-only, auto-generated field.
* @property {boolean} enabledByDefault Whether this event tag should be automatically enabled for all of the advertiser's campaigns and ads.
* @property {boolean} excludeFromAdxRequests Whether to remove this event tag from ads that are trafficked through DoubleClick Bid Manager to Ad Exchange. This may be useful if the event tag uses a pixel that is unapproved for Ad Exchange bids on one or more networks, such as the Google Display Network.
* @property {string} id ID of this event tag. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#eventTag".
* @property {string} name Name of this event tag. This is a required field and must be less than 256 characters long.
* @property {string} siteFilterType Site filter type for this event tag. If no type is specified then the event tag will be applied to all sites.
* @property {string[]} siteIds Filter list of site IDs associated with this event tag. The siteFilterType determines whether this is a whitelist or blacklist filter.
* @property {boolean} sslCompliant Whether this tag is SSL-compliant or not. This is a read-only field.
* @property {string} status Status of this event tag. Must be ENABLED for this event tag to fire. This is a required field.
* @property {string} subaccountId Subaccount ID of this event tag. This is a read-only field that can be left blank.
* @property {string} type Event tag type. Can be used to specify whether to use a third-party pixel, a third-party JavaScript URL, or a third-party click-through URL for either impression or click tracking. This is a required field.
* @property {string} url Payload URL for this event tag. The URL on a click-through event tag should have a landing page URL appended to the end of it. This field is required on insertion.
* @property {integer} urlEscapeLevels Number of times the landing page URL should be URL-escaped before being appended to the click-through event tag URL. Only applies to click-through event tags as specified by the event tag type.
*/
/**
* @typedef EventTagOverride
* @memberOf! dfareporting(v2.7)
* @type object
* @property {boolean} enabled Whether this override is enabled.
* @property {string} id ID of this event tag override. This is a read-only, auto-generated field.
*/
/**
* @typedef EventTagsListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).EventTag[]} eventTags Event tag collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#eventTagsListResponse".
*/
/**
* @typedef File
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).DateRange} dateRange The date range for which the file has report data. The date range will always be the absolute date range for which the report is run.
* @property {string} etag The eTag of this response for caching purposes.
* @property {string} fileName The filename of the file.
* @property {string} format The output format of the report. Only available once the file is available.
* @property {string} id The unique ID of this report file.
* @property {string} kind The kind of resource this is, in this case dfareporting#file.
* @property {string} lastModifiedTime The timestamp in milliseconds since epoch when this file was last modified.
* @property {string} reportId The ID of the report this file was generated from.
* @property {string} status The status of the report file.
* @property {object} urls The URLs where the completed report file can be downloaded.
*/
/**
* @typedef FileList
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} etag The eTag of this response for caching purposes.
* @property {dfareporting(v2.7).File[]} items The files returned in this response.
* @property {string} kind The kind of list this is, in this case dfareporting#fileList.
* @property {string} nextPageToken Continuation token used to page through files. To retrieve the next page of results, set the next request's "pageToken" to the value of this field. The page token is only valid for a limited amount of time and should not be persisted.
*/
/**
* @typedef Flight
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} endDate Inventory item flight end date.
* @property {string} rateOrCost Rate or cost of this flight.
* @property {string} startDate Inventory item flight start date.
* @property {string} units Units of this flight.
*/
/**
* @typedef FloodlightActivitiesGenerateTagResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} floodlightActivityTag Generated tag for this floodlight activity.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#floodlightActivitiesGenerateTagResponse".
*/
/**
* @typedef FloodlightActivitiesListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).FloodlightActivity[]} floodlightActivities Floodlight activity collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#floodlightActivitiesListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
*/
/**
* @typedef FloodlightActivity
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} accountId Account ID of this floodlight activity. This is a read-only field that can be left blank.
* @property {string} advertiserId Advertiser ID of this floodlight activity. If this field is left blank, the value will be copied over either from the activity group's advertiser or the existing activity's advertiser.
* @property {dfareporting(v2.7).DimensionValue} advertiserIdDimensionValue Dimension value for the ID of the advertiser. This is a read-only, auto-generated field.
* @property {string} cacheBustingType Code type used for cache busting in the generated tag.
* @property {string} countingMethod Counting method for conversions for this floodlight activity. This is a required field.
* @property {dfareporting(v2.7).FloodlightActivityDynamicTag[]} defaultTags Dynamic floodlight tags.
* @property {string} expectedUrl URL where this tag will be deployed. If specified, must be less than 256 characters long.
* @property {string} floodlightActivityGroupId Floodlight activity group ID of this floodlight activity. This is a required field.
* @property {string} floodlightActivityGroupName Name of the associated floodlight activity group. This is a read-only field.
* @property {string} floodlightActivityGroupTagString Tag string of the associated floodlight activity group. This is a read-only field.
* @property {string} floodlightActivityGroupType Type of the associated floodlight activity group. This is a read-only field.
* @property {string} floodlightConfigurationId Floodlight configuration ID of this floodlight activity. If this field is left blank, the value will be copied over either from the activity group's floodlight configuration or from the existing activity's floodlight configuration.
* @property {dfareporting(v2.7).DimensionValue} floodlightConfigurationIdDimensionValue Dimension value for the ID of the floodlight configuration. This is a read-only, auto-generated field.
* @property {boolean} hidden Whether this activity is archived.
* @property {string} id ID of this floodlight activity. This is a read-only, auto-generated field.
* @property {dfareporting(v2.7).DimensionValue} idDimensionValue Dimension value for the ID of this floodlight activity. This is a read-only, auto-generated field.
* @property {boolean} imageTagEnabled Whether the image tag is enabled for this activity.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#floodlightActivity".
* @property {string} name Name of this floodlight activity. This is a required field. Must be less than 129 characters long and cannot contain quotes.
* @property {string} notes General notes or implementation instructions for the tag.
* @property {dfareporting(v2.7).FloodlightActivityPublisherDynamicTag[]} publisherTags Publisher dynamic floodlight tags.
* @property {boolean} secure Whether this tag should use SSL.
* @property {boolean} sslCompliant Whether the floodlight activity is SSL-compliant. This is a read-only field, its value detected by the system from the floodlight tags.
* @property {boolean} sslRequired Whether this floodlight activity must be SSL-compliant.
* @property {string} subaccountId Subaccount ID of this floodlight activity. This is a read-only field that can be left blank.
* @property {string} tagFormat Tag format type for the floodlight activity. If left blank, the tag format will default to HTML.
* @property {string} tagString Value of the cat= paramter in the floodlight tag, which the ad servers use to identify the activity. This is optional: if empty, a new tag string will be generated for you. This string must be 1 to 8 characters long, with valid characters being [a-z][A-Z][0-9][-][ _ ]. This tag string must also be unique among activities of the same activity group. This field is read-only after insertion.
* @property {string[]} userDefinedVariableTypes List of the user-defined variables used by this conversion tag. These map to the "u[1-20]=" in the tags. Each of these can have a user defined type.
Acceptable values are:
- "U1"
- "U2"
- "U3"
- "U4"
- "U5"
- "U6"
- "U7"
- "U8"
- "U9"
- "U10"
- "U11"
- "U12"
- "U13"
- "U14"
- "U15"
- "U16"
- "U17"
- "U18"
- "U19"
- "U20"
*/
/**
* @typedef FloodlightActivityDynamicTag
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} id ID of this dynamic tag. This is a read-only, auto-generated field.
* @property {string} name Name of this tag.
* @property {string} tag Tag code.
*/
/**
* @typedef FloodlightActivityGroup
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} accountId Account ID of this floodlight activity group. This is a read-only field that can be left blank.
* @property {string} advertiserId Advertiser ID of this floodlight activity group. If this field is left blank, the value will be copied over either from the floodlight configuration's advertiser or from the existing activity group's advertiser.
* @property {dfareporting(v2.7).DimensionValue} advertiserIdDimensionValue Dimension value for the ID of the advertiser. This is a read-only, auto-generated field.
* @property {string} floodlightConfigurationId Floodlight configuration ID of this floodlight activity group. This is a required field.
* @property {dfareporting(v2.7).DimensionValue} floodlightConfigurationIdDimensionValue Dimension value for the ID of the floodlight configuration. This is a read-only, auto-generated field.
* @property {string} id ID of this floodlight activity group. This is a read-only, auto-generated field.
* @property {dfareporting(v2.7).DimensionValue} idDimensionValue Dimension value for the ID of this floodlight activity group. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#floodlightActivityGroup".
* @property {string} name Name of this floodlight activity group. This is a required field. Must be less than 65 characters long and cannot contain quotes.
* @property {string} subaccountId Subaccount ID of this floodlight activity group. This is a read-only field that can be left blank.
* @property {string} tagString Value of the type= parameter in the floodlight tag, which the ad servers use to identify the activity group that the activity belongs to. This is optional: if empty, a new tag string will be generated for you. This string must be 1 to 8 characters long, with valid characters being [a-z][A-Z][0-9][-][ _ ]. This tag string must also be unique among activity groups of the same floodlight configuration. This field is read-only after insertion.
* @property {string} type Type of the floodlight activity group. This is a required field that is read-only after insertion.
*/
/**
* @typedef FloodlightActivityGroupsListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).FloodlightActivityGroup[]} floodlightActivityGroups Floodlight activity group collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#floodlightActivityGroupsListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
*/
/**
* @typedef FloodlightActivityPublisherDynamicTag
* @memberOf! dfareporting(v2.7)
* @type object
* @property {boolean} clickThrough Whether this tag is applicable only for click-throughs.
* @property {string} directorySiteId Directory site ID of this dynamic tag. This is a write-only field that can be used as an alternative to the siteId field. When this resource is retrieved, only the siteId field will be populated.
* @property {dfareporting(v2.7).FloodlightActivityDynamicTag} dynamicTag Dynamic floodlight tag.
* @property {string} siteId Site ID of this dynamic tag.
* @property {dfareporting(v2.7).DimensionValue} siteIdDimensionValue Dimension value for the ID of the site. This is a read-only, auto-generated field.
* @property {boolean} viewThrough Whether this tag is applicable only for view-throughs.
*/
/**
* @typedef FloodlightConfiguration
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} accountId Account ID of this floodlight configuration. This is a read-only field that can be left blank.
* @property {string} advertiserId Advertiser ID of the parent advertiser of this floodlight configuration.
* @property {dfareporting(v2.7).DimensionValue} advertiserIdDimensionValue Dimension value for the ID of the advertiser. This is a read-only, auto-generated field.
* @property {boolean} analyticsDataSharingEnabled Whether advertiser data is shared with Google Analytics.
* @property {boolean} exposureToConversionEnabled Whether the exposure-to-conversion report is enabled. This report shows detailed pathway information on up to 10 of the most recent ad exposures seen by a user before converting.
* @property {string} firstDayOfWeek Day that will be counted as the first day of the week in reports. This is a required field.
* @property {string} id ID of this floodlight configuration. This is a read-only, auto-generated field.
* @property {dfareporting(v2.7).DimensionValue} idDimensionValue Dimension value for the ID of this floodlight configuration. This is a read-only, auto-generated field.
* @property {boolean} inAppAttributionTrackingEnabled Whether in-app attribution tracking is enabled.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#floodlightConfiguration".
* @property {dfareporting(v2.7).LookbackConfiguration} lookbackConfiguration Lookback window settings for this floodlight configuration.
* @property {string} naturalSearchConversionAttributionOption Types of attribution options for natural search conversions.
* @property {dfareporting(v2.7).OmnitureSettings} omnitureSettings Settings for DCM Omniture integration.
* @property {string[]} standardVariableTypes List of standard variables enabled for this configuration.
Acceptable values are:
- "ORD"
- "NUM"
* @property {string} subaccountId Subaccount ID of this floodlight configuration. This is a read-only field that can be left blank.
* @property {dfareporting(v2.7).TagSettings} tagSettings Configuration settings for dynamic and image floodlight tags.
* @property {dfareporting(v2.7).ThirdPartyAuthenticationToken[]} thirdPartyAuthenticationTokens List of third-party authentication tokens enabled for this configuration.
* @property {dfareporting(v2.7).UserDefinedVariableConfiguration[]} userDefinedVariableConfigurations List of user defined variables enabled for this configuration.
*/
/**
* @typedef FloodlightConfigurationsListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).FloodlightConfiguration[]} floodlightConfigurations Floodlight configuration collection.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#floodlightConfigurationsListResponse".
*/
/**
* @typedef FloodlightReportCompatibleFields
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).Dimension[]} dimensionFilters Dimensions which are compatible to be selected in the "dimensionFilters" section of the report.
* @property {dfareporting(v2.7).Dimension[]} dimensions Dimensions which are compatible to be selected in the "dimensions" section of the report.
* @property {string} kind The kind of resource this is, in this case dfareporting#floodlightReportCompatibleFields.
* @property {dfareporting(v2.7).Metric[]} metrics Metrics which are compatible to be selected in the "metricNames" section of the report.
*/
/**
* @typedef FrequencyCap
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} duration Duration of time, in seconds, for this frequency cap. The maximum duration is 90 days in seconds, or 7,776,000.
* @property {string} impressions Number of times an individual user can be served the ad within the specified duration. The maximum allowed is 15.
*/
/**
* @typedef FsCommand
* @memberOf! dfareporting(v2.7)
* @type object
* @property {integer} left Distance from the left of the browser.Applicable when positionOption is DISTANCE_FROM_TOP_LEFT_CORNER.
* @property {string} positionOption Position in the browser where the window will open.
* @property {integer} top Distance from the top of the browser. Applicable when positionOption is DISTANCE_FROM_TOP_LEFT_CORNER.
* @property {integer} windowHeight Height of the window.
* @property {integer} windowWidth Width of the window.
*/
/**
* @typedef GeoTargeting
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).City[]} cities Cities to be targeted. For each city only dartId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting a city, do not target or exclude the country of the city, and do not target the metro or region of the city.
* @property {dfareporting(v2.7).Country[]} countries Countries to be targeted or excluded from targeting, depending on the setting of the excludeCountries field. For each country only dartId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting or excluding a country, do not target regions, cities, metros, or postal codes in the same country.
* @property {boolean} excludeCountries Whether or not to exclude the countries in the countries field from targeting. If false, the countries field refers to countries which will be targeted by the ad.
* @property {dfareporting(v2.7).Metro[]} metros Metros to be targeted. For each metro only dmaId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting a metro, do not target or exclude the country of the metro.
* @property {dfareporting(v2.7).PostalCode[]} postalCodes Postal codes to be targeted. For each postal code only id is required. The other fields are populated automatically when the ad is inserted or updated. If targeting a postal code, do not target or exclude the country of the postal code.
* @property {dfareporting(v2.7).Region[]} regions Regions to be targeted. For each region only dartId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting a region, do not target or exclude the country of the region.
*/
/**
* @typedef InventoryItem
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} accountId Account ID of this inventory item.
* @property {dfareporting(v2.7).AdSlot[]} adSlots Ad slots of this inventory item. If this inventory item represents a standalone placement, there will be exactly one ad slot. If this inventory item represents a placement group, there will be more than one ad slot, each representing one child placement in that placement group.
* @property {string} advertiserId Advertiser ID of this inventory item.
* @property {string} contentCategoryId Content category ID of this inventory item.
* @property {string} estimatedClickThroughRate Estimated click-through rate of this inventory item.
* @property {string} estimatedConversionRate Estimated conversion rate of this inventory item.
* @property {string} id ID of this inventory item.
* @property {boolean} inPlan Whether this inventory item is in plan.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#inventoryItem".
* @property {dfareporting(v2.7).LastModifiedInfo} lastModifiedInfo Information about the most recent modification of this inventory item.
* @property {string} name Name of this inventory item. For standalone inventory items, this is the same name as that of its only ad slot. For group inventory items, this can differ from the name of any of its ad slots.
* @property {string} negotiationChannelId Negotiation channel ID of this inventory item.
* @property {string} orderId Order ID of this inventory item.
* @property {string} placementStrategyId Placement strategy ID of this inventory item.
* @property {dfareporting(v2.7).Pricing} pricing Pricing of this inventory item.
* @property {string} projectId Project ID of this inventory item.
* @property {string} rfpId RFP ID of this inventory item.
* @property {string} siteId ID of the site this inventory item is associated with.
* @property {string} subaccountId Subaccount ID of this inventory item.
* @property {string} type Type of inventory item.
*/
/**
* @typedef InventoryItemsListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).InventoryItem[]} inventoryItems Inventory item collection
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#inventoryItemsListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
*/
/**
* @typedef KeyValueTargetingExpression
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} expression Keyword expression being targeted by the ad.
*/
/**
* @typedef LandingPage
* @memberOf! dfareporting(v2.7)
* @type object
* @property {boolean} default Whether or not this landing page will be assigned to any ads or creatives that do not have a landing page assigned explicitly. Only one default landing page is allowed per campaign.
* @property {string} id ID of this landing page. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#landingPage".
* @property {string} name Name of this landing page. This is a required field. It must be less than 256 characters long, and must be unique among landing pages of the same campaign.
* @property {string} url URL of this landing page. This is a required field.
*/
/**
* @typedef LandingPagesListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#landingPagesListResponse".
* @property {dfareporting(v2.7).LandingPage[]} landingPages Landing page collection
*/
/**
* @typedef Language
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} id Language ID of this language. This is the ID used for targeting and generating reports.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#language".
* @property {string} languageCode Format of language code is an ISO 639 two-letter language code optionally followed by an underscore followed by an ISO 3166 code. Examples are "en" for English or "zh_CN" for Simplified Chinese.
* @property {string} name Name of this language.
*/
/**
* @typedef LanguageTargeting
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).Language[]} languages Languages that this ad targets. For each language only languageId is required. The other fields are populated automatically when the ad is inserted or updated.
*/
/**
* @typedef LanguagesListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#languagesListResponse".
* @property {dfareporting(v2.7).Language[]} languages Language collection.
*/
/**
* @typedef LastModifiedInfo
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} time Timestamp of the last change in milliseconds since epoch.
*/
/**
* @typedef ListPopulationClause
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).ListPopulationTerm[]} terms Terms of this list population clause. Each clause is made up of list population terms representing constraints and are joined by ORs.
*/
/**
* @typedef ListPopulationRule
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} floodlightActivityId Floodlight activity ID associated with this rule. This field can be left blank.
* @property {string} floodlightActivityName Name of floodlight activity associated with this rule. This is a read-only, auto-generated field.
* @property {dfareporting(v2.7).ListPopulationClause[]} listPopulationClauses Clauses that make up this list population rule. Clauses are joined by ANDs, and the clauses themselves are made up of list population terms which are joined by ORs.
*/
/**
* @typedef ListPopulationTerm
* @memberOf! dfareporting(v2.7)
* @type object
* @property {boolean} contains Will be true if the term should check if the user is in the list and false if the term should check if the user is not in the list. This field is only relevant when type is set to LIST_MEMBERSHIP_TERM. False by default.
* @property {boolean} negation Whether to negate the comparison result of this term during rule evaluation. This field is only relevant when type is left unset or set to CUSTOM_VARIABLE_TERM or REFERRER_TERM.
* @property {string} operator Comparison operator of this term. This field is only relevant when type is left unset or set to CUSTOM_VARIABLE_TERM or REFERRER_TERM.
* @property {string} remarketingListId ID of the list in question. This field is only relevant when type is set to LIST_MEMBERSHIP_TERM.
* @property {string} type List population term type determines the applicable fields in this object. If left unset or set to CUSTOM_VARIABLE_TERM, then variableName, variableFriendlyName, operator, value, and negation are applicable. If set to LIST_MEMBERSHIP_TERM then remarketingListId and contains are applicable. If set to REFERRER_TERM then operator, value, and negation are applicable.
* @property {string} value Literal to compare the variable to. This field is only relevant when type is left unset or set to CUSTOM_VARIABLE_TERM or REFERRER_TERM.
* @property {string} variableFriendlyName Friendly name of this term's variable. This is a read-only, auto-generated field. This field is only relevant when type is left unset or set to CUSTOM_VARIABLE_TERM.
* @property {string} variableName Name of the variable (U1, U2, etc.) being compared in this term. This field is only relevant when type is set to null, CUSTOM_VARIABLE_TERM or REFERRER_TERM.
*/
/**
* @typedef ListTargetingExpression
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} expression Expression describing which lists are being targeted by the ad.
*/
/**
* @typedef LookbackConfiguration
* @memberOf! dfareporting(v2.7)
* @type object
* @property {integer} clickDuration Lookback window, in days, from the last time a given user clicked on one of your ads. If you enter 0, clicks will not be considered as triggering events for floodlight tracking. If you leave this field blank, the default value for your account will be used.
* @property {integer} postImpressionActivitiesDuration Lookback window, in days, from the last time a given user viewed one of your ads. If you enter 0, impressions will not be considered as triggering events for floodlight tracking. If you leave this field blank, the default value for your account will be used.
*/
/**
* @typedef Metric
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} kind The kind of resource this is, in this case dfareporting#metric.
* @property {string} name The metric name, e.g. dfa:impressions
*/
/**
* @typedef Metro
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} countryCode Country code of the country to which this metro region belongs.
* @property {string} countryDartId DART ID of the country to which this metro region belongs.
* @property {string} dartId DART ID of this metro region.
* @property {string} dmaId DMA ID of this metro region. This is the ID used for targeting and generating reports, and is equivalent to metro_code.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#metro".
* @property {string} metroCode Metro code of this metro region. This is equivalent to dma_id.
* @property {string} name Name of this metro region.
*/
/**
* @typedef MetrosListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#metrosListResponse".
* @property {dfareporting(v2.7).Metro[]} metros Metro collection.
*/
/**
* @typedef MobileCarrier
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} countryCode Country code of the country to which this mobile carrier belongs.
* @property {string} countryDartId DART ID of the country to which this mobile carrier belongs.
* @property {string} id ID of this mobile carrier.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#mobileCarrier".
* @property {string} name Name of this mobile carrier.
*/
/**
* @typedef MobileCarriersListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#mobileCarriersListResponse".
* @property {dfareporting(v2.7).MobileCarrier[]} mobileCarriers Mobile carrier collection.
*/
/**
* @typedef ObjectFilter
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#objectFilter".
* @property {string[]} objectIds Applicable when status is ASSIGNED. The user has access to objects with these object IDs.
* @property {string} status Status of the filter. NONE means the user has access to none of the objects. ALL means the user has access to all objects. ASSIGNED means the user has access to the objects with IDs in the objectIds list.
*/
/**
* @typedef OffsetPosition
* @memberOf! dfareporting(v2.7)
* @type object
* @property {integer} left Offset distance from left side of an asset or a window.
* @property {integer} top Offset distance from top side of an asset or a window.
*/
/**
* @typedef OmnitureSettings
* @memberOf! dfareporting(v2.7)
* @type object
* @property {boolean} omnitureCostDataEnabled Whether placement cost data will be sent to Omniture. This property can be enabled only if omnitureIntegrationEnabled is true.
* @property {boolean} omnitureIntegrationEnabled Whether Omniture integration is enabled. This property can be enabled only when the "Advanced Ad Serving" account setting is enabled.
*/
/**
* @typedef OperatingSystem
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} dartId DART ID of this operating system. This is the ID used for targeting.
* @property {boolean} desktop Whether this operating system is for desktop.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#operatingSystem".
* @property {boolean} mobile Whether this operating system is for mobile.
* @property {string} name Name of this operating system.
*/
/**
* @typedef OperatingSystemVersion
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} id ID of this operating system version.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#operatingSystemVersion".
* @property {string} majorVersion Major version (leftmost number) of this operating system version.
* @property {string} minorVersion Minor version (number after the first dot) of this operating system version.
* @property {string} name Name of this operating system version.
* @property {dfareporting(v2.7).OperatingSystem} operatingSystem Operating system of this operating system version.
*/
/**
* @typedef OperatingSystemVersionsListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#operatingSystemVersionsListResponse".
* @property {dfareporting(v2.7).OperatingSystemVersion[]} operatingSystemVersions Operating system version collection.
*/
/**
* @typedef OperatingSystemsListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#operatingSystemsListResponse".
* @property {dfareporting(v2.7).OperatingSystem[]} operatingSystems Operating system collection.
*/
/**
* @typedef OptimizationActivity
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} floodlightActivityId Floodlight activity ID of this optimization activity. This is a required field.
* @property {dfareporting(v2.7).DimensionValue} floodlightActivityIdDimensionValue Dimension value for the ID of the floodlight activity. This is a read-only, auto-generated field.
* @property {integer} weight Weight associated with this optimization. Must be greater than 1. The weight assigned will be understood in proportion to the weights assigned to the other optimization activities.
*/
/**
* @typedef Order
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} accountId Account ID of this order.
* @property {string} advertiserId Advertiser ID of this order.
* @property {string[]} approverUserProfileIds IDs for users that have to approve documents created for this order.
* @property {string} buyerInvoiceId Buyer invoice ID associated with this order.
* @property {string} buyerOrganizationName Name of the buyer organization.
* @property {string} comments Comments in this order.
* @property {dfareporting(v2.7).OrderContact[]} contacts Contacts for this order.
* @property {string} id ID of this order. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#order".
* @property {dfareporting(v2.7).LastModifiedInfo} lastModifiedInfo Information about the most recent modification of this order.
* @property {string} name Name of this order.
* @property {string} notes Notes of this order.
* @property {string} planningTermId ID of the terms and conditions template used in this order.
* @property {string} projectId Project ID of this order.
* @property {string} sellerOrderId Seller order ID associated with this order.
* @property {string} sellerOrganizationName Name of the seller organization.
* @property {string[]} siteId Site IDs this order is associated with.
* @property {string[]} siteNames Free-form site names this order is associated with.
* @property {string} subaccountId Subaccount ID of this order.
* @property {string} termsAndConditions Terms and conditions of this order.
*/
/**
* @typedef OrderContact
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} contactInfo Free-form information about this contact. It could be any information related to this contact in addition to type, title, name, and signature user profile ID.
* @property {string} contactName Name of this contact.
* @property {string} contactTitle Title of this contact.
* @property {string} contactType Type of this contact.
* @property {string} signatureUserProfileId ID of the user profile containing the signature that will be embedded into order documents.
*/
/**
* @typedef OrderDocument
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} accountId Account ID of this order document.
* @property {string} advertiserId Advertiser ID of this order document.
* @property {string} amendedOrderDocumentId The amended order document ID of this order document. An order document can be created by optionally amending another order document so that the change history can be preserved.
* @property {string[]} approvedByUserProfileIds IDs of users who have approved this order document.
* @property {boolean} cancelled Whether this order document is cancelled.
* @property {dfareporting(v2.7).LastModifiedInfo} createdInfo Information about the creation of this order document.
* @property {string} effectiveDate Effective date of this order document.
* @property {string} id ID of this order document.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#orderDocument".
* @property {string[]} lastSentRecipients List of email addresses that received the last sent document.
* @property {string} lastSentTime Timestamp of the last email sent with this order document.
* @property {string} orderId ID of the order from which this order document is created.
* @property {string} projectId Project ID of this order document.
* @property {boolean} signed Whether this order document has been signed.
* @property {string} subaccountId Subaccount ID of this order document.
* @property {string} title Title of this order document.
* @property {string} type Type of this order document
*/
/**
* @typedef OrderDocumentsListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#orderDocumentsListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
* @property {dfareporting(v2.7).OrderDocument[]} orderDocuments Order document collection
*/
/**
* @typedef OrdersListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#ordersListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
* @property {dfareporting(v2.7).Order[]} orders Order collection.
*/
/**
* @typedef PathToConversionReportCompatibleFields
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).Dimension[]} conversionDimensions Conversion dimensions which are compatible to be selected in the "conversionDimensions" section of the report.
* @property {dfareporting(v2.7).Dimension[]} customFloodlightVariables Custom floodlight variables which are compatible to be selected in the "customFloodlightVariables" section of the report.
* @property {string} kind The kind of resource this is, in this case dfareporting#pathToConversionReportCompatibleFields.
* @property {dfareporting(v2.7).Metric[]} metrics Metrics which are compatible to be selected in the "metricNames" section of the report.
* @property {dfareporting(v2.7).Dimension[]} perInteractionDimensions Per-interaction dimensions which are compatible to be selected in the "perInteractionDimensions" section of the report.
*/
/**
* @typedef Placement
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} accountId Account ID of this placement. This field can be left blank.
* @property {string} advertiserId Advertiser ID of this placement. This field can be left blank.
* @property {dfareporting(v2.7).DimensionValue} advertiserIdDimensionValue Dimension value for the ID of the advertiser. This is a read-only, auto-generated field.
* @property {boolean} archived Whether this placement is archived.
* @property {string} campaignId Campaign ID of this placement. This field is a required field on insertion.
* @property {dfareporting(v2.7).DimensionValue} campaignIdDimensionValue Dimension value for the ID of the campaign. This is a read-only, auto-generated field.
* @property {string} comment Comments for this placement.
* @property {string} compatibility Placement compatibility. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering on desktop, on mobile devices or in mobile apps for regular or interstitial ads respectively. APP and APP_INTERSTITIAL are no longer allowed for new placement insertions. Instead, use DISPLAY or DISPLAY_INTERSTITIAL. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard. This field is required on insertion.
* @property {string} contentCategoryId ID of the content category assigned to this placement.
* @property {dfareporting(v2.7).LastModifiedInfo} createInfo Information about the creation of this placement. This is a read-only field.
* @property {string} directorySiteId Directory site ID of this placement. On insert, you must set either this field or the siteId field to specify the site associated with this placement. This is a required field that is read-only after insertion.
* @property {dfareporting(v2.7).DimensionValue} directorySiteIdDimensionValue Dimension value for the ID of the directory site. This is a read-only, auto-generated field.
* @property {string} externalId External ID for this placement.
* @property {string} id ID of this placement. This is a read-only, auto-generated field.
* @property {dfareporting(v2.7).DimensionValue} idDimensionValue Dimension value for the ID of this placement. This is a read-only, auto-generated field.
* @property {string} keyName Key name of this placement. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#placement".
* @property {dfareporting(v2.7).LastModifiedInfo} lastModifiedInfo Information about the most recent modification of this placement. This is a read-only field.
* @property {dfareporting(v2.7).LookbackConfiguration} lookbackConfiguration Lookback window settings for this placement.
* @property {string} name Name of this placement.This is a required field and must be less than 256 characters long.
* @property {boolean} paymentApproved Whether payment was approved for this placement. This is a read-only field relevant only to publisher-paid placements.
* @property {string} paymentSource Payment source for this placement. This is a required field that is read-only after insertion.
* @property {string} placementGroupId ID of this placement's group, if applicable.
* @property {dfareporting(v2.7).DimensionValue} placementGroupIdDimensionValue Dimension value for the ID of the placement group. This is a read-only, auto-generated field.
* @property {string} placementStrategyId ID of the placement strategy assigned to this placement.
* @property {dfareporting(v2.7).PricingSchedule} pricingSchedule Pricing schedule of this placement. This field is required on insertion, specifically subfields startDate, endDate and pricingType.
* @property {boolean} primary Whether this placement is the primary placement of a roadblock (placement group). You cannot change this field from true to false. Setting this field to true will automatically set the primary field on the original primary placement of the roadblock to false, and it will automatically set the roadblock's primaryPlacementId field to the ID of this placement.
* @property {dfareporting(v2.7).LastModifiedInfo} publisherUpdateInfo Information about the last publisher update. This is a read-only field.
* @property {string} siteId Site ID associated with this placement. On insert, you must set either this field or the directorySiteId field to specify the site associated with this placement. This is a required field that is read-only after insertion.
* @property {dfareporting(v2.7).DimensionValue} siteIdDimensionValue Dimension value for the ID of the site. This is a read-only, auto-generated field.
* @property {dfareporting(v2.7).Size} size Size associated with this placement. When inserting or updating a placement, only the size ID field is used. This field is required on insertion.
* @property {boolean} sslRequired Whether creatives assigned to this placement must be SSL-compliant.
* @property {string} status Third-party placement status.
* @property {string} subaccountId Subaccount ID of this placement. This field can be left blank.
* @property {string[]} tagFormats Tag formats to generate for this placement. This field is required on insertion.
Acceptable values are:
- "PLACEMENT_TAG_STANDARD"
- "PLACEMENT_TAG_IFRAME_JAVASCRIPT"
- "PLACEMENT_TAG_IFRAME_ILAYER"
- "PLACEMENT_TAG_INTERNAL_REDIRECT"
- "PLACEMENT_TAG_JAVASCRIPT"
- "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT"
- "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT"
- "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT"
- "PLACEMENT_TAG_CLICK_COMMANDS"
- "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH"
- "PLACEMENT_TAG_TRACKING"
- "PLACEMENT_TAG_TRACKING_IFRAME"
- "PLACEMENT_TAG_TRACKING_JAVASCRIPT"
* @property {dfareporting(v2.7).TagSetting} tagSetting Tag settings for this placement.
* @property {boolean} videoActiveViewOptOut Whether Verification and ActiveView are disabled for in-stream video creatives for this placement. The same setting videoActiveViewOptOut exists on the site level -- the opt out occurs if either of these settings are true. These settings are distinct from DirectorySites.settings.activeViewOptOut or Sites.siteSettings.activeViewOptOut which only apply to display ads. However, Accounts.activeViewOptOut opts out both video traffic, as well as display ads, from Verification and ActiveView.
* @property {dfareporting(v2.7).VideoSettings} videoSettings A collection of settings which affect video creatives served through this placement. Applicable to placements with IN_STREAM_VIDEO compatibility.
* @property {string} vpaidAdapterChoice VPAID adapter setting for this placement. Controls which VPAID format the measurement adapter will use for in-stream video creatives assigned to this placement.
*/
/**
* @typedef PlacementAssignment
* @memberOf! dfareporting(v2.7)
* @type object
* @property {boolean} active Whether this placement assignment is active. When true, the placement will be included in the ad's rotation.
* @property {string} placementId ID of the placement to be assigned. This is a required field.
* @property {dfareporting(v2.7).DimensionValue} placementIdDimensionValue Dimension value for the ID of the placement. This is a read-only, auto-generated field.
* @property {boolean} sslRequired Whether the placement to be assigned requires SSL. This is a read-only field that is auto-generated when the ad is inserted or updated.
*/
/**
* @typedef PlacementGroup
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} accountId Account ID of this placement group. This is a read-only field that can be left blank.
* @property {string} advertiserId Advertiser ID of this placement group. This is a required field on insertion.
* @property {dfareporting(v2.7).DimensionValue} advertiserIdDimensionValue Dimension value for the ID of the advertiser. This is a read-only, auto-generated field.
* @property {boolean} archived Whether this placement group is archived.
* @property {string} campaignId Campaign ID of this placement group. This field is required on insertion.
* @property {dfareporting(v2.7).DimensionValue} campaignIdDimensionValue Dimension value for the ID of the campaign. This is a read-only, auto-generated field.
* @property {string[]} childPlacementIds IDs of placements which are assigned to this placement group. This is a read-only, auto-generated field.
* @property {string} comment Comments for this placement group.
* @property {string} contentCategoryId ID of the content category assigned to this placement group.
* @property {dfareporting(v2.7).LastModifiedInfo} createInfo Information about the creation of this placement group. This is a read-only field.
* @property {string} directorySiteId Directory site ID associated with this placement group. On insert, you must set either this field or the site_id field to specify the site associated with this placement group. This is a required field that is read-only after insertion.
* @property {dfareporting(v2.7).DimensionValue} directorySiteIdDimensionValue Dimension value for the ID of the directory site. This is a read-only, auto-generated field.
* @property {string} externalId External ID for this placement.
* @property {string} id ID of this placement group. This is a read-only, auto-generated field.
* @property {dfareporting(v2.7).DimensionValue} idDimensionValue Dimension value for the ID of this placement group. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#placementGroup".
* @property {dfareporting(v2.7).LastModifiedInfo} lastModifiedInfo Information about the most recent modification of this placement group. This is a read-only field.
* @property {string} name Name of this placement group. This is a required field and must be less than 256 characters long.
* @property {string} placementGroupType Type of this placement group. A package is a simple group of placements that acts as a single pricing point for a group of tags. A roadblock is a group of placements that not only acts as a single pricing point, but also assumes that all the tags in it will be served at the same time. A roadblock requires one of its assigned placements to be marked as primary for reporting. This field is required on insertion.
* @property {string} placementStrategyId ID of the placement strategy assigned to this placement group.
* @property {dfareporting(v2.7).PricingSchedule} pricingSchedule Pricing schedule of this placement group. This field is required on insertion.
* @property {string} primaryPlacementId ID of the primary placement, used to calculate the media cost of a roadblock (placement group). Modifying this field will automatically modify the primary field on all affected roadblock child placements.
* @property {dfareporting(v2.7).DimensionValue} primaryPlacementIdDimensionValue Dimension value for the ID of the primary placement. This is a read-only, auto-generated field.
* @property {string} siteId Site ID associated with this placement group. On insert, you must set either this field or the directorySiteId field to specify the site associated with this placement group. This is a required field that is read-only after insertion.
* @property {dfareporting(v2.7).DimensionValue} siteIdDimensionValue Dimension value for the ID of the site. This is a read-only, auto-generated field.
* @property {string} subaccountId Subaccount ID of this placement group. This is a read-only field that can be left blank.
*/
/**
* @typedef PlacementGroupsListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#placementGroupsListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
* @property {dfareporting(v2.7).PlacementGroup[]} placementGroups Placement group collection.
*/
/**
* @typedef PlacementStrategiesListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#placementStrategiesListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
* @property {dfareporting(v2.7).PlacementStrategy[]} placementStrategies Placement strategy collection.
*/
/**
* @typedef PlacementStrategy
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} accountId Account ID of this placement strategy.This is a read-only field that can be left blank.
* @property {string} id ID of this placement strategy. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#placementStrategy".
* @property {string} name Name of this placement strategy. This is a required field. It must be less than 256 characters long and unique among placement strategies of the same account.
*/
/**
* @typedef PlacementTag
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} placementId Placement ID
* @property {dfareporting(v2.7).TagData[]} tagDatas Tags generated for this placement.
*/
/**
* @typedef PlacementsGenerateTagsResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#placementsGenerateTagsResponse".
* @property {dfareporting(v2.7).PlacementTag[]} placementTags Set of generated tags for the specified placements.
*/
/**
* @typedef PlacementsListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#placementsListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
* @property {dfareporting(v2.7).Placement[]} placements Placement collection.
*/
/**
* @typedef PlatformType
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} id ID of this platform type.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#platformType".
* @property {string} name Name of this platform type.
*/
/**
* @typedef PlatformTypesListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#platformTypesListResponse".
* @property {dfareporting(v2.7).PlatformType[]} platformTypes Platform type collection.
*/
/**
* @typedef PopupWindowProperties
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).Size} dimension Popup dimension for a creative. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA and all VPAID
* @property {dfareporting(v2.7).OffsetPosition} offset Upper-left corner coordinates of the popup window. Applicable if positionType is COORDINATES.
* @property {string} positionType Popup window position either centered or at specific coordinate.
* @property {boolean} showAddressBar Whether to display the browser address bar.
* @property {boolean} showMenuBar Whether to display the browser menu bar.
* @property {boolean} showScrollBar Whether to display the browser scroll bar.
* @property {boolean} showStatusBar Whether to display the browser status bar.
* @property {boolean} showToolBar Whether to display the browser tool bar.
* @property {string} title Title of popup window.
*/
/**
* @typedef PostalCode
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} code Postal code. This is equivalent to the id field.
* @property {string} countryCode Country code of the country to which this postal code belongs.
* @property {string} countryDartId DART ID of the country to which this postal code belongs.
* @property {string} id ID of this postal code.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#postalCode".
*/
/**
* @typedef PostalCodesListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#postalCodesListResponse".
* @property {dfareporting(v2.7).PostalCode[]} postalCodes Postal code collection.
*/
/**
* @typedef Pricing
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} capCostType Cap cost type of this inventory item.
* @property {string} endDate End date of this inventory item.
* @property {dfareporting(v2.7).Flight[]} flights Flights of this inventory item. A flight (a.k.a. pricing period) represents the inventory item pricing information for a specific period of time.
* @property {string} groupType Group type of this inventory item if it represents a placement group. Is null otherwise. There are two type of placement groups: PLANNING_PLACEMENT_GROUP_TYPE_PACKAGE is a simple group of inventory items that acts as a single pricing point for a group of tags. PLANNING_PLACEMENT_GROUP_TYPE_ROADBLOCK is a group of inventory items that not only acts as a single pricing point, but also assumes that all the tags in it will be served at the same time. A roadblock requires one of its assigned inventory items to be marked as primary.
* @property {string} pricingType Pricing type of this inventory item.
* @property {string} startDate Start date of this inventory item.
*/
/**
* @typedef PricingSchedule
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} capCostOption Placement cap cost option.
* @property {boolean} disregardOverdelivery Whether cap costs are ignored by ad serving.
* @property {string} endDate Placement end date. This date must be later than, or the same day as, the placement start date, but not later than the campaign end date. If, for example, you set 6/25/2015 as both the start and end dates, the effective placement date is just that day only, 6/25/2015. The hours, minutes, and seconds of the end date should not be set, as doing so will result in an error. This field is required on insertion.
* @property {boolean} flighted Whether this placement is flighted. If true, pricing periods will be computed automatically.
* @property {string} floodlightActivityId Floodlight activity ID associated with this placement. This field should be set when placement pricing type is set to PRICING_TYPE_CPA.
* @property {dfareporting(v2.7).PricingSchedulePricingPeriod[]} pricingPeriods Pricing periods for this placement.
* @property {string} pricingType Placement pricing type. This field is required on insertion.
* @property {string} startDate Placement start date. This date must be later than, or the same day as, the campaign start date. The hours, minutes, and seconds of the start date should not be set, as doing so will result in an error. This field is required on insertion.
* @property {string} testingStartDate Testing start date of this placement. The hours, minutes, and seconds of the start date should not be set, as doing so will result in an error.
*/
/**
* @typedef PricingSchedulePricingPeriod
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} endDate Pricing period end date. This date must be later than, or the same day as, the pricing period start date, but not later than the placement end date. The period end date can be the same date as the period start date. If, for example, you set 6/25/2015 as both the start and end dates, the effective pricing period date is just that day only, 6/25/2015. The hours, minutes, and seconds of the end date should not be set, as doing so will result in an error.
* @property {string} pricingComment Comments for this pricing period.
* @property {string} rateOrCostNanos Rate or cost of this pricing period.
* @property {string} startDate Pricing period start date. This date must be later than, or the same day as, the placement start date. The hours, minutes, and seconds of the start date should not be set, as doing so will result in an error.
* @property {string} units Units of this pricing period.
*/
/**
* @typedef Project
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} accountId Account ID of this project.
* @property {string} advertiserId Advertiser ID of this project.
* @property {string} audienceAgeGroup Audience age group of this project.
* @property {string} audienceGender Audience gender of this project.
* @property {string} budget Budget of this project in the currency specified by the current account. The value stored in this field represents only the non-fractional amount. For example, for USD, the smallest value that can be represented by this field is 1 US dollar.
* @property {string} clientBillingCode Client billing code of this project.
* @property {string} clientName Name of the project client.
* @property {string} endDate End date of the project.
* @property {string} id ID of this project. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#project".
* @property {dfareporting(v2.7).LastModifiedInfo} lastModifiedInfo Information about the most recent modification of this project.
* @property {string} name Name of this project.
* @property {string} overview Overview of this project.
* @property {string} startDate Start date of the project.
* @property {string} subaccountId Subaccount ID of this project.
* @property {string} targetClicks Number of clicks that the advertiser is targeting.
* @property {string} targetConversions Number of conversions that the advertiser is targeting.
* @property {string} targetCpaNanos CPA that the advertiser is targeting.
* @property {string} targetCpcNanos CPC that the advertiser is targeting.
* @property {string} targetCpmActiveViewNanos vCPM from Active View that the advertiser is targeting.
* @property {string} targetCpmNanos CPM that the advertiser is targeting.
* @property {string} targetImpressions Number of impressions that the advertiser is targeting.
*/
/**
* @typedef ProjectsListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#projectsListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
* @property {dfareporting(v2.7).Project[]} projects Project collection.
*/
/**
* @typedef ReachReportCompatibleFields
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).Dimension[]} dimensionFilters Dimensions which are compatible to be selected in the "dimensionFilters" section of the report.
* @property {dfareporting(v2.7).Dimension[]} dimensions Dimensions which are compatible to be selected in the "dimensions" section of the report.
* @property {string} kind The kind of resource this is, in this case dfareporting#reachReportCompatibleFields.
* @property {dfareporting(v2.7).Metric[]} metrics Metrics which are compatible to be selected in the "metricNames" section of the report.
* @property {dfareporting(v2.7).Metric[]} pivotedActivityMetrics Metrics which are compatible to be selected as activity metrics to pivot on in the "activities" section of the report.
* @property {dfareporting(v2.7).Metric[]} reachByFrequencyMetrics Metrics which are compatible to be selected in the "reachByFrequencyMetricNames" section of the report.
*/
/**
* @typedef Recipient
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} deliveryType The delivery type for the recipient.
* @property {string} email The email address of the recipient.
* @property {string} kind The kind of resource this is, in this case dfareporting#recipient.
*/
/**
* @typedef Region
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} countryCode Country code of the country to which this region belongs.
* @property {string} countryDartId DART ID of the country to which this region belongs.
* @property {string} dartId DART ID of this region.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#region".
* @property {string} name Name of this region.
* @property {string} regionCode Region code.
*/
/**
* @typedef RegionsListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#regionsListResponse".
* @property {dfareporting(v2.7).Region[]} regions Region collection.
*/
/**
* @typedef RemarketingList
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} accountId Account ID of this remarketing list. This is a read-only, auto-generated field that is only returned in GET requests.
* @property {boolean} active Whether this remarketing list is active.
* @property {string} advertiserId Dimension value for the advertiser ID that owns this remarketing list. This is a required field.
* @property {dfareporting(v2.7).DimensionValue} advertiserIdDimensionValue Dimension value for the ID of the advertiser. This is a read-only, auto-generated field.
* @property {string} description Remarketing list description.
* @property {string} id Remarketing list ID. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#remarketingList".
* @property {string} lifeSpan Number of days that a user should remain in the remarketing list without an impression.
* @property {dfareporting(v2.7).ListPopulationRule} listPopulationRule Rule used to populate the remarketing list with users.
* @property {string} listSize Number of users currently in the list. This is a read-only field.
* @property {string} listSource Product from which this remarketing list was originated.
* @property {string} name Name of the remarketing list. This is a required field. Must be no greater than 128 characters long.
* @property {string} subaccountId Subaccount ID of this remarketing list. This is a read-only, auto-generated field that is only returned in GET requests.
*/
/**
* @typedef RemarketingListShare
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#remarketingListShare".
* @property {string} remarketingListId Remarketing list ID. This is a read-only, auto-generated field.
* @property {string[]} sharedAccountIds Accounts that the remarketing list is shared with.
* @property {string[]} sharedAdvertiserIds Advertisers that the remarketing list is shared with.
*/
/**
* @typedef RemarketingListsListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#remarketingListsListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
* @property {dfareporting(v2.7).RemarketingList[]} remarketingLists Remarketing list collection.
*/
/**
* @typedef Report
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} accountId The account ID to which this report belongs.
* @property {object} criteria The report criteria for a report of type "STANDARD".
* @property {object} crossDimensionReachCriteria The report criteria for a report of type "CROSS_DIMENSION_REACH".
* @property {object} delivery The report's email delivery settings.
* @property {string} etag The eTag of this response for caching purposes.
* @property {string} fileName The filename used when generating report files for this report.
* @property {object} floodlightCriteria The report criteria for a report of type "FLOODLIGHT".
* @property {string} format The output format of the report. If not specified, default format is "CSV". Note that the actual format in the completed report file might differ if for instance the report's size exceeds the format's capabilities. "CSV" will then be the fallback format.
* @property {string} id The unique ID identifying this report resource.
* @property {string} kind The kind of resource this is, in this case dfareporting#report.
* @property {string} lastModifiedTime The timestamp (in milliseconds since epoch) of when this report was last modified.
* @property {string} name The name of the report.
* @property {string} ownerProfileId The user profile id of the owner of this report.
* @property {object} pathToConversionCriteria The report criteria for a report of type "PATH_TO_CONVERSION".
* @property {object} reachCriteria The report criteria for a report of type "REACH".
* @property {object} schedule The report's schedule. Can only be set if the report's 'dateRange' is a relative date range and the relative date range is not "TODAY".
* @property {string} subAccountId The subaccount ID to which this report belongs if applicable.
* @property {string} type The type of the report.
*/
/**
* @typedef ReportCompatibleFields
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).Dimension[]} dimensionFilters Dimensions which are compatible to be selected in the "dimensionFilters" section of the report.
* @property {dfareporting(v2.7).Dimension[]} dimensions Dimensions which are compatible to be selected in the "dimensions" section of the report.
* @property {string} kind The kind of resource this is, in this case dfareporting#reportCompatibleFields.
* @property {dfareporting(v2.7).Metric[]} metrics Metrics which are compatible to be selected in the "metricNames" section of the report.
* @property {dfareporting(v2.7).Metric[]} pivotedActivityMetrics Metrics which are compatible to be selected as activity metrics to pivot on in the "activities" section of the report.
*/
/**
* @typedef ReportList
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} etag The eTag of this response for caching purposes.
* @property {dfareporting(v2.7).Report[]} items The reports returned in this response.
* @property {string} kind The kind of list this is, in this case dfareporting#reportList.
* @property {string} nextPageToken Continuation token used to page through reports. To retrieve the next page of results, set the next request's "pageToken" to the value of this field. The page token is only valid for a limited amount of time and should not be persisted.
*/
/**
* @typedef ReportsConfiguration
* @memberOf! dfareporting(v2.7)
* @type object
* @property {boolean} exposureToConversionEnabled Whether the exposure to conversion report is enabled. This report shows detailed pathway information on up to 10 of the most recent ad exposures seen by a user before converting.
* @property {dfareporting(v2.7).LookbackConfiguration} lookbackConfiguration Default lookback windows for new advertisers in this account.
* @property {string} reportGenerationTimeZoneId Report generation time zone ID of this account. This is a required field that can only be changed by a superuser.
Acceptable values are:
- "1" for "America/New_York"
- "2" for "Europe/London"
- "3" for "Europe/Paris"
- "4" for "Africa/Johannesburg"
- "5" for "Asia/Jerusalem"
- "6" for "Asia/Shanghai"
- "7" for "Asia/Hong_Kong"
- "8" for "Asia/Tokyo"
- "9" for "Australia/Sydney"
- "10" for "Asia/Dubai"
- "11" for "America/Los_Angeles"
- "12" for "Pacific/Auckland"
- "13" for "America/Sao_Paulo"
*/
/**
* @typedef RichMediaExitOverride
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).ClickThroughUrl} clickThroughUrl Click-through URL of this rich media exit override. Applicable if the enabled field is set to true.
* @property {boolean} enabled Whether to use the clickThroughUrl. If false, the creative-level exit will be used.
* @property {string} exitId ID for the override to refer to a specific exit in the creative.
*/
/**
* @typedef Rule
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} assetId A creativeAssets[].id. This should refer to one of the parent assets in this creative. This is a required field.
* @property {string} name A user-friendly name for this rule. This is a required field.
* @property {string} targetingTemplateId A targeting template ID. The targeting from the targeting template will be used to determine whether this asset should be served. This is a required field.
*/
/**
* @typedef Site
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} accountId Account ID of this site. This is a read-only field that can be left blank.
* @property {boolean} approved Whether this site is approved.
* @property {string} directorySiteId Directory site associated with this site. This is a required field that is read-only after insertion.
* @property {dfareporting(v2.7).DimensionValue} directorySiteIdDimensionValue Dimension value for the ID of the directory site. This is a read-only, auto-generated field.
* @property {string} id ID of this site. This is a read-only, auto-generated field.
* @property {dfareporting(v2.7).DimensionValue} idDimensionValue Dimension value for the ID of this site. This is a read-only, auto-generated field.
* @property {string} keyName Key name of this site. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#site".
* @property {string} name Name of this site.This is a required field. Must be less than 128 characters long. If this site is under a subaccount, the name must be unique among sites of the same subaccount. Otherwise, this site is a top-level site, and the name must be unique among top-level sites of the same account.
* @property {dfareporting(v2.7).SiteContact[]} siteContacts Site contacts.
* @property {dfareporting(v2.7).SiteSettings} siteSettings Site-wide settings.
* @property {string} subaccountId Subaccount ID of this site. This is a read-only field that can be left blank.
*/
/**
* @typedef SiteContact
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} address Address of this site contact.
* @property {string} contactType Site contact type.
* @property {string} email Email address of this site contact. This is a required field.
* @property {string} firstName First name of this site contact.
* @property {string} id ID of this site contact. This is a read-only, auto-generated field.
* @property {string} lastName Last name of this site contact.
* @property {string} phone Primary phone number of this site contact.
* @property {string} title Title or designation of this site contact.
*/
/**
* @typedef SiteSettings
* @memberOf! dfareporting(v2.7)
* @type object
* @property {boolean} activeViewOptOut Whether active view creatives are disabled for this site.
* @property {dfareporting(v2.7).CreativeSettings} creativeSettings Site-wide creative settings.
* @property {boolean} disableBrandSafeAds Whether brand safe ads are disabled for this site.
* @property {boolean} disableNewCookie Whether new cookies are disabled for this site.
* @property {dfareporting(v2.7).LookbackConfiguration} lookbackConfiguration Lookback window settings for this site.
* @property {dfareporting(v2.7).TagSetting} tagSetting Configuration settings for dynamic and image floodlight tags.
* @property {boolean} videoActiveViewOptOutTemplate Whether Verification and ActiveView for in-stream video creatives are disabled by default for new placements created under this site. This value will be used to populate the placement.videoActiveViewOptOut field, when no value is specified for the new placement.
* @property {string} vpaidAdapterChoiceTemplate Default VPAID adapter setting for new placements created under this site. This value will be used to populate the placements.vpaidAdapterChoice field, when no value is specified for the new placement. Controls which VPAID format the measurement adapter will use for in-stream video creatives assigned to the placement. The publisher's specifications will typically determine this setting. For VPAID creatives, the adapter format will match the VPAID format (HTML5 VPAID creatives use the HTML5 adapter, and Flash VPAID creatives use the Flash adapter).
*/
/**
* @typedef SitesListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#sitesListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
* @property {dfareporting(v2.7).Site[]} sites Site collection.
*/
/**
* @typedef Size
* @memberOf! dfareporting(v2.7)
* @type object
* @property {integer} height Height of this size.
* @property {boolean} iab IAB standard size. This is a read-only, auto-generated field.
* @property {string} id ID of this size. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#size".
* @property {integer} width Width of this size.
*/
/**
* @typedef SizesListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#sizesListResponse".
* @property {dfareporting(v2.7).Size[]} sizes Size collection.
*/
/**
* @typedef SkippableSetting
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#skippableSetting".
* @property {dfareporting(v2.7).VideoOffset} progressOffset Amount of time to play videos served to this placement before counting a view. Applicable when skippable is true.
* @property {dfareporting(v2.7).VideoOffset} skipOffset Amount of time to play videos served to this placement before the skip button should appear. Applicable when skippable is true.
* @property {boolean} skippable Whether the user can skip creatives served to this placement.
*/
/**
* @typedef SortedDimension
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} kind The kind of resource this is, in this case dfareporting#sortedDimension.
* @property {string} name The name of the dimension.
* @property {string} sortOrder An optional sort order for the dimension column.
*/
/**
* @typedef Subaccount
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} accountId ID of the account that contains this subaccount. This is a read-only field that can be left blank.
* @property {string[]} availablePermissionIds IDs of the available user role permissions for this subaccount.
* @property {string} id ID of this subaccount. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#subaccount".
* @property {string} name Name of this subaccount. This is a required field. Must be less than 128 characters long and be unique among subaccounts of the same account.
*/
/**
* @typedef SubaccountsListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#subaccountsListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
* @property {dfareporting(v2.7).Subaccount[]} subaccounts Subaccount collection.
*/
/**
* @typedef TagData
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} adId Ad associated with this placement tag.
* @property {string} clickTag Tag string to record a click.
* @property {string} creativeId Creative associated with this placement tag.
* @property {string} format TagData tag format of this tag.
* @property {string} impressionTag Tag string for serving an ad.
*/
/**
* @typedef TagSetting
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} additionalKeyValues Additional key-values to be included in tags. Each key-value pair must be of the form key=value, and pairs must be separated by a semicolon (;). Keys and values must not contain commas. For example, id=2;color=red is a valid value for this field.
* @property {boolean} includeClickThroughUrls Whether static landing page URLs should be included in the tags. This setting applies only to placements.
* @property {boolean} includeClickTracking Whether click-tracking string should be included in the tags.
* @property {string} keywordOption Option specifying how keywords are embedded in ad tags. This setting can be used to specify whether keyword placeholders are inserted in placement tags for this site. Publishers can then add keywords to those placeholders.
*/
/**
* @typedef TagSettings
* @memberOf! dfareporting(v2.7)
* @type object
* @property {boolean} dynamicTagEnabled Whether dynamic floodlight tags are enabled.
* @property {boolean} imageTagEnabled Whether image tags are enabled.
*/
/**
* @typedef TargetWindow
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} customHtml User-entered value.
* @property {string} targetWindowOption Type of browser window for which the backup image of the flash creative can be displayed.
*/
/**
* @typedef TargetableRemarketingList
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} accountId Account ID of this remarketing list. This is a read-only, auto-generated field that is only returned in GET requests.
* @property {boolean} active Whether this targetable remarketing list is active.
* @property {string} advertiserId Dimension value for the advertiser ID that owns this targetable remarketing list.
* @property {dfareporting(v2.7).DimensionValue} advertiserIdDimensionValue Dimension value for the ID of the advertiser.
* @property {string} description Targetable remarketing list description.
* @property {string} id Targetable remarketing list ID.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#targetableRemarketingList".
* @property {string} lifeSpan Number of days that a user should remain in the targetable remarketing list without an impression.
* @property {string} listSize Number of users currently in the list. This is a read-only field.
* @property {string} listSource Product from which this targetable remarketing list was originated.
* @property {string} name Name of the targetable remarketing list. Is no greater than 128 characters long.
* @property {string} subaccountId Subaccount ID of this remarketing list. This is a read-only, auto-generated field that is only returned in GET requests.
*/
/**
* @typedef TargetableRemarketingListsListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#targetableRemarketingListsListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
* @property {dfareporting(v2.7).TargetableRemarketingList[]} targetableRemarketingLists Targetable remarketing list collection.
*/
/**
* @typedef TargetingTemplate
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} accountId Account ID of this targeting template. This field, if left unset, will be auto-generated on insert and is read-only after insert.
* @property {string} advertiserId Advertiser ID of this targeting template. This is a required field on insert and is read-only after insert.
* @property {dfareporting(v2.7).DimensionValue} advertiserIdDimensionValue Dimension value for the ID of the advertiser. This is a read-only, auto-generated field.
* @property {dfareporting(v2.7).DayPartTargeting} dayPartTargeting Time and day targeting criteria.
* @property {dfareporting(v2.7).GeoTargeting} geoTargeting Geographical targeting criteria.
* @property {string} id ID of this targeting template. This is a read-only, auto-generated field.
* @property {dfareporting(v2.7).KeyValueTargetingExpression} keyValueTargetingExpression Key-value targeting criteria.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#targetingTemplate".
* @property {dfareporting(v2.7).LanguageTargeting} languageTargeting Language targeting criteria.
* @property {dfareporting(v2.7).ListTargetingExpression} listTargetingExpression Remarketing list targeting criteria.
* @property {string} name Name of this targeting template. This field is required. It must be less than 256 characters long and unique within an advertiser.
* @property {string} subaccountId Subaccount ID of this targeting template. This field, if left unset, will be auto-generated on insert and is read-only after insert.
* @property {dfareporting(v2.7).TechnologyTargeting} technologyTargeting Technology platform targeting criteria.
*/
/**
* @typedef TargetingTemplatesListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#targetingTemplatesListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
* @property {dfareporting(v2.7).TargetingTemplate[]} targetingTemplates Targeting template collection.
*/
/**
* @typedef TechnologyTargeting
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).Browser[]} browsers Browsers that this ad targets. For each browser either set browserVersionId or dartId along with the version numbers. If both are specified, only browserVersionId will be used. The other fields are populated automatically when the ad is inserted or updated.
* @property {dfareporting(v2.7).ConnectionType[]} connectionTypes Connection types that this ad targets. For each connection type only id is required. The other fields are populated automatically when the ad is inserted or updated.
* @property {dfareporting(v2.7).MobileCarrier[]} mobileCarriers Mobile carriers that this ad targets. For each mobile carrier only id is required, and the other fields are populated automatically when the ad is inserted or updated. If targeting a mobile carrier, do not set targeting for any zip codes.
* @property {dfareporting(v2.7).OperatingSystemVersion[]} operatingSystemVersions Operating system versions that this ad targets. To target all versions, use operatingSystems. For each operating system version, only id is required. The other fields are populated automatically when the ad is inserted or updated. If targeting an operating system version, do not set targeting for the corresponding operating system in operatingSystems.
* @property {dfareporting(v2.7).OperatingSystem[]} operatingSystems Operating systems that this ad targets. To target specific versions, use operatingSystemVersions. For each operating system only dartId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting an operating system, do not set targeting for operating system versions for the same operating system.
* @property {dfareporting(v2.7).PlatformType[]} platformTypes Platform types that this ad targets. For example, desktop, mobile, or tablet. For each platform type, only id is required, and the other fields are populated automatically when the ad is inserted or updated.
*/
/**
* @typedef ThirdPartyAuthenticationToken
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} name Name of the third-party authentication token.
* @property {string} value Value of the third-party authentication token. This is a read-only, auto-generated field.
*/
/**
* @typedef ThirdPartyTrackingUrl
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} thirdPartyUrlType Third-party URL type for in-stream video creatives.
* @property {string} url URL for the specified third-party URL type.
*/
/**
* @typedef TranscodeSetting
* @memberOf! dfareporting(v2.7)
* @type object
* @property {integer[]} enabledVideoFormats Whitelist of video formats to be served to this placement. Set this list to null or empty to serve all video formats.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#transcodeSetting".
*/
/**
* @typedef UserDefinedVariableConfiguration
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} dataType Data type for the variable. This is a required field.
* @property {string} reportName User-friendly name for the variable which will appear in reports. This is a required field, must be less than 64 characters long, and cannot contain the following characters: ""<>".
* @property {string} variableType Variable name in the tag. This is a required field.
*/
/**
* @typedef UserProfile
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} accountId The account ID to which this profile belongs.
* @property {string} accountName The account name this profile belongs to.
* @property {string} etag The eTag of this response for caching purposes.
* @property {string} kind The kind of resource this is, in this case dfareporting#userProfile.
* @property {string} profileId The unique ID of the user profile.
* @property {string} subAccountId The sub account ID this profile belongs to if applicable.
* @property {string} subAccountName The sub account name this profile belongs to if applicable.
* @property {string} userName The user name.
*/
/**
* @typedef UserProfileList
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} etag The eTag of this response for caching purposes.
* @property {dfareporting(v2.7).UserProfile[]} items The user profiles returned in this response.
* @property {string} kind The kind of list this is, in this case dfareporting#userProfileList.
*/
/**
* @typedef UserRole
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} accountId Account ID of this user role. This is a read-only field that can be left blank.
* @property {boolean} defaultUserRole Whether this is a default user role. Default user roles are created by the system for the account/subaccount and cannot be modified or deleted. Each default user role comes with a basic set of preassigned permissions.
* @property {string} id ID of this user role. This is a read-only, auto-generated field.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#userRole".
* @property {string} name Name of this user role. This is a required field. Must be less than 256 characters long. If this user role is under a subaccount, the name must be unique among sites of the same subaccount. Otherwise, this user role is a top-level user role, and the name must be unique among top-level user roles of the same account.
* @property {string} parentUserRoleId ID of the user role that this user role is based on or copied from. This is a required field.
* @property {dfareporting(v2.7).UserRolePermission[]} permissions List of permissions associated with this user role.
* @property {string} subaccountId Subaccount ID of this user role. This is a read-only field that can be left blank.
*/
/**
* @typedef UserRolePermission
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} availability Levels of availability for a user role permission.
* @property {string} id ID of this user role permission.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#userRolePermission".
* @property {string} name Name of this user role permission.
* @property {string} permissionGroupId ID of the permission group that this user role permission belongs to.
*/
/**
* @typedef UserRolePermissionGroup
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} id ID of this user role permission.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#userRolePermissionGroup".
* @property {string} name Name of this user role permission group.
*/
/**
* @typedef UserRolePermissionGroupsListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#userRolePermissionGroupsListResponse".
* @property {dfareporting(v2.7).UserRolePermissionGroup[]} userRolePermissionGroups User role permission group collection.
*/
/**
* @typedef UserRolePermissionsListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#userRolePermissionsListResponse".
* @property {dfareporting(v2.7).UserRolePermission[]} userRolePermissions User role permission collection.
*/
/**
* @typedef UserRolesListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#userRolesListResponse".
* @property {string} nextPageToken Pagination token to be used for the next list operation.
* @property {dfareporting(v2.7).UserRole[]} userRoles User role collection.
*/
/**
* @typedef VideoFormat
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} fileType File type of the video format.
* @property {integer} id ID of the video format.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#videoFormat".
* @property {dfareporting(v2.7).Size} resolution The resolution of this video format.
* @property {integer} targetBitRate The target bit rate of this video format.
*/
/**
* @typedef VideoFormatsListResponse
* @memberOf! dfareporting(v2.7)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#videoFormatsListResponse".
* @property {dfareporting(v2.7).VideoFormat[]} videoFormats Video format collection.
*/
/**
* @typedef VideoOffset
* @memberOf! dfareporting(v2.7)
* @type object
* @property {integer} offsetPercentage Duration, as a percentage of video duration. Do not set when offsetSeconds is set.
* @property {integer} offsetSeconds Duration, in seconds. Do not set when offsetPercentage is set.
*/
/**
* @typedef VideoSettings
* @memberOf! dfareporting(v2.7)
* @type object
* @property {dfareporting(v2.7).CompanionSetting} companionSettings Settings for the companion creatives of video creatives served to this placement.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "dfareporting#videoSettings".
* @property {dfareporting(v2.7).SkippableSetting} skippableSettings Settings for the skippability of video creatives served to this placement. If this object is provided, the creative-level skippable settings will be overridden.
* @property {dfareporting(v2.7).TranscodeSetting} transcodeSettings Settings for the transcodes of video creatives served to this placement. If this object is provided, the creative-level transcode settings will be overridden.
*/
module.exports = Dfareporting;
|
| File | Statements | Branches | Functions | Lines | |||||
|---|---|---|---|---|---|---|---|---|---|
| v1configuration.js | 4.6% | (4 / 87) | 0% | (0 / 54) | 0% | (0 / 14) | 4.6% | (4 / 87) |
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* Google Play Game Services Publishing API
*
* The Publishing API for Google Play Game Services.
*
* @example
* var google = require('googleapis');
* var gamesConfiguration = google.gamesConfiguration('v1configuration');
*
* @namespace gamesConfiguration
* @type {Function}
* @version v1configuration
* @variation v1configuration
* @param {object=} options Options for Gamesconfiguration
*/
function Gamesconfiguration(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.achievementConfigurations = {
/**
* gamesConfiguration.achievementConfigurations.delete
*
* @desc Delete the achievement configuration with the given ID.
*
* @alias gamesConfiguration.achievementConfigurations.delete
* @memberOf! gamesConfiguration(v1configuration)
*
* @param {object} params Parameters for request
* @param {string} params.achievementId The ID of the achievement used by this method.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/games/v1configuration/achievements/{achievementId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['achievementId'],
pathParams: ['achievementId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* gamesConfiguration.achievementConfigurations.get
*
* @desc Retrieves the metadata of the achievement configuration with the given ID.
*
* @alias gamesConfiguration.achievementConfigurations.get
* @memberOf! gamesConfiguration(v1configuration)
*
* @param {object} params Parameters for request
* @param {string} params.achievementId The ID of the achievement used by this method.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/games/v1configuration/achievements/{achievementId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['achievementId'],
pathParams: ['achievementId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* gamesConfiguration.achievementConfigurations.insert
*
* @desc Insert a new achievement configuration in this application.
*
* @alias gamesConfiguration.achievementConfigurations.insert
* @memberOf! gamesConfiguration(v1configuration)
*
* @param {object} params Parameters for request
* @param {string} params.applicationId The application ID from the Google Play developer console.
* @param {gamesConfiguration(v1configuration).AchievementConfiguration} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/games/v1configuration/applications/{applicationId}/achievements',
method: 'POST'
}, options),
params: params,
requiredParams: ['applicationId'],
pathParams: ['applicationId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* gamesConfiguration.achievementConfigurations.list
*
* @desc Returns a list of the achievement configurations in this application.
*
* @alias gamesConfiguration.achievementConfigurations.list
* @memberOf! gamesConfiguration(v1configuration)
*
* @param {object} params Parameters for request
* @param {string} params.applicationId The application ID from the Google Play developer console.
* @param {integer=} params.maxResults The maximum number of resource configurations to return in the response, used for paging. For any response, the actual number of resources returned may be less than the specified maxResults.
* @param {string=} params.pageToken The token returned by the previous request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/games/v1configuration/applications/{applicationId}/achievements',
method: 'GET'
}, options),
params: params,
requiredParams: ['applicationId'],
pathParams: ['applicationId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* gamesConfiguration.achievementConfigurations.patch
*
* @desc Update the metadata of the achievement configuration with the given ID. This method supports patch semantics.
*
* @alias gamesConfiguration.achievementConfigurations.patch
* @memberOf! gamesConfiguration(v1configuration)
*
* @param {object} params Parameters for request
* @param {string} params.achievementId The ID of the achievement used by this method.
* @param {gamesConfiguration(v1configuration).AchievementConfiguration} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/games/v1configuration/achievements/{achievementId}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['achievementId'],
pathParams: ['achievementId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* gamesConfiguration.achievementConfigurations.update
*
* @desc Update the metadata of the achievement configuration with the given ID.
*
* @alias gamesConfiguration.achievementConfigurations.update
* @memberOf! gamesConfiguration(v1configuration)
*
* @param {object} params Parameters for request
* @param {string} params.achievementId The ID of the achievement used by this method.
* @param {gamesConfiguration(v1configuration).AchievementConfiguration} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/games/v1configuration/achievements/{achievementId}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['achievementId'],
pathParams: ['achievementId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.imageConfigurations = {
/**
* gamesConfiguration.imageConfigurations.upload
*
* @desc Uploads an image for a resource with the given ID and image type.
*
* @alias gamesConfiguration.imageConfigurations.upload
* @memberOf! gamesConfiguration(v1configuration)
*
* @param {object} params Parameters for request
* @param {string} params.imageType Selects which image in a resource for this method.
* @param {string} params.resourceId The ID of the resource used by this method.
* @param {object} params.media Media object
* @param {string} params.media.mimeType Media mime-type
* @param {string|object} params.media.body Media body contents
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
upload: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/games/v1configuration/images/{resourceId}/imageType/{imageType}',
method: 'POST'
}, options),
params: params,
mediaUrl: 'https://www.googleapis.com/upload/games/v1configuration/images/{resourceId}/imageType/{imageType}',
requiredParams: ['resourceId', 'imageType'],
pathParams: ['imageType', 'resourceId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.leaderboardConfigurations = {
/**
* gamesConfiguration.leaderboardConfigurations.delete
*
* @desc Delete the leaderboard configuration with the given ID.
*
* @alias gamesConfiguration.leaderboardConfigurations.delete
* @memberOf! gamesConfiguration(v1configuration)
*
* @param {object} params Parameters for request
* @param {string} params.leaderboardId The ID of the leaderboard.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/games/v1configuration/leaderboards/{leaderboardId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['leaderboardId'],
pathParams: ['leaderboardId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* gamesConfiguration.leaderboardConfigurations.get
*
* @desc Retrieves the metadata of the leaderboard configuration with the given ID.
*
* @alias gamesConfiguration.leaderboardConfigurations.get
* @memberOf! gamesConfiguration(v1configuration)
*
* @param {object} params Parameters for request
* @param {string} params.leaderboardId The ID of the leaderboard.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/games/v1configuration/leaderboards/{leaderboardId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['leaderboardId'],
pathParams: ['leaderboardId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* gamesConfiguration.leaderboardConfigurations.insert
*
* @desc Insert a new leaderboard configuration in this application.
*
* @alias gamesConfiguration.leaderboardConfigurations.insert
* @memberOf! gamesConfiguration(v1configuration)
*
* @param {object} params Parameters for request
* @param {string} params.applicationId The application ID from the Google Play developer console.
* @param {gamesConfiguration(v1configuration).LeaderboardConfiguration} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/games/v1configuration/applications/{applicationId}/leaderboards',
method: 'POST'
}, options),
params: params,
requiredParams: ['applicationId'],
pathParams: ['applicationId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* gamesConfiguration.leaderboardConfigurations.list
*
* @desc Returns a list of the leaderboard configurations in this application.
*
* @alias gamesConfiguration.leaderboardConfigurations.list
* @memberOf! gamesConfiguration(v1configuration)
*
* @param {object} params Parameters for request
* @param {string} params.applicationId The application ID from the Google Play developer console.
* @param {integer=} params.maxResults The maximum number of resource configurations to return in the response, used for paging. For any response, the actual number of resources returned may be less than the specified maxResults.
* @param {string=} params.pageToken The token returned by the previous request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/games/v1configuration/applications/{applicationId}/leaderboards',
method: 'GET'
}, options),
params: params,
requiredParams: ['applicationId'],
pathParams: ['applicationId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* gamesConfiguration.leaderboardConfigurations.patch
*
* @desc Update the metadata of the leaderboard configuration with the given ID. This method supports patch semantics.
*
* @alias gamesConfiguration.leaderboardConfigurations.patch
* @memberOf! gamesConfiguration(v1configuration)
*
* @param {object} params Parameters for request
* @param {string} params.leaderboardId The ID of the leaderboard.
* @param {gamesConfiguration(v1configuration).LeaderboardConfiguration} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/games/v1configuration/leaderboards/{leaderboardId}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['leaderboardId'],
pathParams: ['leaderboardId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* gamesConfiguration.leaderboardConfigurations.update
*
* @desc Update the metadata of the leaderboard configuration with the given ID.
*
* @alias gamesConfiguration.leaderboardConfigurations.update
* @memberOf! gamesConfiguration(v1configuration)
*
* @param {object} params Parameters for request
* @param {string} params.leaderboardId The ID of the leaderboard.
* @param {gamesConfiguration(v1configuration).LeaderboardConfiguration} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/games/v1configuration/leaderboards/{leaderboardId}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['leaderboardId'],
pathParams: ['leaderboardId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
}
/**
* @typedef AchievementConfiguration
* @memberOf! gamesConfiguration(v1configuration)
* @type object
* @property {string} achievementType The type of the achievement.
Possible values are:
- "STANDARD" - Achievement is either locked or unlocked.
- "INCREMENTAL" - Achievement is incremental.
* @property {gamesConfiguration(v1configuration).AchievementConfigurationDetail} draft The draft data of the achievement.
* @property {string} id The ID of the achievement.
* @property {string} initialState The initial state of the achievement.
Possible values are:
- "HIDDEN" - Achievement is hidden.
- "REVEALED" - Achievement is revealed.
- "UNLOCKED" - Achievement is unlocked.
* @property {string} kind Uniquely identifies the type of this resource. Value is always the fixed string gamesConfiguration#achievementConfiguration.
* @property {gamesConfiguration(v1configuration).AchievementConfigurationDetail} published The read-only published data of the achievement.
* @property {integer} stepsToUnlock Steps to unlock. Only applicable to incremental achievements.
* @property {string} token The token for this resource.
*/
/**
* @typedef AchievementConfigurationDetail
* @memberOf! gamesConfiguration(v1configuration)
* @type object
* @property {gamesConfiguration(v1configuration).LocalizedStringBundle} description Localized strings for the achievement description.
* @property {string} iconUrl The icon url of this achievement. Writes to this field are ignored.
* @property {string} kind Uniquely identifies the type of this resource. Value is always the fixed string gamesConfiguration#achievementConfigurationDetail.
* @property {gamesConfiguration(v1configuration).LocalizedStringBundle} name Localized strings for the achievement name.
* @property {integer} pointValue Point value for the achievement.
* @property {integer} sortRank The sort rank of this achievement. Writes to this field are ignored.
*/
/**
* @typedef AchievementConfigurationListResponse
* @memberOf! gamesConfiguration(v1configuration)
* @type object
* @property {gamesConfiguration(v1configuration).AchievementConfiguration[]} items The achievement configurations.
* @property {string} kind Uniquely identifies the type of this resource. Value is always the fixed string games#achievementConfigurationListResponse.
* @property {string} nextPageToken The pagination token for the next page of results.
*/
/**
* @typedef GamesNumberAffixConfiguration
* @memberOf! gamesConfiguration(v1configuration)
* @type object
* @property {gamesConfiguration(v1configuration).LocalizedStringBundle} few When the language requires special treatment of "small" numbers (as with 2, 3, and 4 in Czech; or numbers ending 2, 3, or 4 but not 12, 13, or 14 in Polish).
* @property {gamesConfiguration(v1configuration).LocalizedStringBundle} many When the language requires special treatment of "large" numbers (as with numbers ending 11-99 in Maltese).
* @property {gamesConfiguration(v1configuration).LocalizedStringBundle} one When the language requires special treatment of numbers like one (as with the number 1 in English and most other languages; in Russian, any number ending in 1 but not ending in 11 is in this class).
* @property {gamesConfiguration(v1configuration).LocalizedStringBundle} other When the language does not require special treatment of the given quantity (as with all numbers in Chinese, or 42 in English).
* @property {gamesConfiguration(v1configuration).LocalizedStringBundle} two When the language requires special treatment of numbers like two (as with 2 in Welsh, or 102 in Slovenian).
* @property {gamesConfiguration(v1configuration).LocalizedStringBundle} zero When the language requires special treatment of the number 0 (as in Arabic).
*/
/**
* @typedef GamesNumberFormatConfiguration
* @memberOf! gamesConfiguration(v1configuration)
* @type object
* @property {string} currencyCode The curreny code string. Only used for CURRENCY format type.
* @property {integer} numDecimalPlaces The number of decimal places for number. Only used for NUMERIC format type.
* @property {string} numberFormatType The formatting for the number.
Possible values are:
- "NUMERIC" - Numbers are formatted to have no digits or a fixed number of digits after the decimal point according to locale. An optional custom unit can be added.
- "TIME_DURATION" - Numbers are formatted to hours, minutes and seconds.
- "CURRENCY" - Numbers are formatted to currency according to locale.
* @property {gamesConfiguration(v1configuration).GamesNumberAffixConfiguration} suffix An optional suffix for the NUMERIC format type. These strings follow the same plural rules as all Android string resources.
*/
/**
* @typedef ImageConfiguration
* @memberOf! gamesConfiguration(v1configuration)
* @type object
* @property {string} imageType The image type for the image.
* @property {string} kind Uniquely identifies the type of this resource. Value is always the fixed string gamesConfiguration#imageConfiguration.
* @property {string} resourceId The resource ID of resource which the image belongs to.
* @property {string} url The url for this image.
*/
/**
* @typedef LeaderboardConfiguration
* @memberOf! gamesConfiguration(v1configuration)
* @type object
* @property {gamesConfiguration(v1configuration).LeaderboardConfigurationDetail} draft The draft data of the leaderboard.
* @property {string} id The ID of the leaderboard.
* @property {string} kind Uniquely identifies the type of this resource. Value is always the fixed string gamesConfiguration#leaderboardConfiguration.
* @property {gamesConfiguration(v1configuration).LeaderboardConfigurationDetail} published The read-only published data of the leaderboard.
* @property {string} scoreMax Maximum score that can be posted to this leaderboard.
* @property {string} scoreMin Minimum score that can be posted to this leaderboard.
* @property {string} scoreOrder The type of the leaderboard.
Possible values are:
- "LARGER_IS_BETTER" - Larger scores posted are ranked higher.
- "SMALLER_IS_BETTER" - Smaller scores posted are ranked higher.
* @property {string} token The token for this resource.
*/
/**
* @typedef LeaderboardConfigurationDetail
* @memberOf! gamesConfiguration(v1configuration)
* @type object
* @property {string} iconUrl The icon url of this leaderboard. Writes to this field are ignored.
* @property {string} kind Uniquely identifies the type of this resource. Value is always the fixed string gamesConfiguration#leaderboardConfigurationDetail.
* @property {gamesConfiguration(v1configuration).LocalizedStringBundle} name Localized strings for the leaderboard name.
* @property {gamesConfiguration(v1configuration).GamesNumberFormatConfiguration} scoreFormat The score formatting for the leaderboard.
* @property {integer} sortRank The sort rank of this leaderboard. Writes to this field are ignored.
*/
/**
* @typedef LeaderboardConfigurationListResponse
* @memberOf! gamesConfiguration(v1configuration)
* @type object
* @property {gamesConfiguration(v1configuration).LeaderboardConfiguration[]} items The leaderboard configurations.
* @property {string} kind Uniquely identifies the type of this resource. Value is always the fixed string games#leaderboardConfigurationListResponse.
* @property {string} nextPageToken The pagination token for the next page of results.
*/
/**
* @typedef LocalizedString
* @memberOf! gamesConfiguration(v1configuration)
* @type object
* @property {string} kind Uniquely identifies the type of this resource. Value is always the fixed string gamesConfiguration#localizedString.
* @property {string} locale The locale string.
* @property {string} value The string value.
*/
/**
* @typedef LocalizedStringBundle
* @memberOf! gamesConfiguration(v1configuration)
* @type object
* @property {string} kind Uniquely identifies the type of this resource. Value is always the fixed string gamesConfiguration#localizedStringBundle.
* @property {gamesConfiguration(v1configuration).LocalizedString[]} translations The locale strings.
*/
module.exports = Gamesconfiguration;
|
| File | Statements | Branches | Functions | Lines | |||||
|---|---|---|---|---|---|---|---|---|---|
| v1management.js | 2.27% | (4 / 176) | 0% | (0 / 110) | 0% | (0 / 28) | 2.27% | (4 / 176) |
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* Google Play Game Services Management API
*
* The Management API for Google Play Game Services.
*
* @example
* var google = require('googleapis');
* var gamesManagement = google.gamesManagement('v1management');
*
* @namespace gamesManagement
* @type {Function}
* @version v1management
* @variation v1management
* @param {object=} options Options for Gamesmanagement
*/
function Gamesmanagement(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.achievements = {
/**
* gamesManagement.achievements.reset
*
* @desc Resets the achievement with the given ID for the currently authenticated player. This method is only accessible to whitelisted tester accounts for your application.
*
* @alias gamesManagement.achievements.reset
* @memberOf! gamesManagement(v1management)
*
* @param {object} params Parameters for request
* @param {string} params.achievementId The ID of the achievement used by this method.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
reset: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/games/v1management/achievements/{achievementId}/reset',
method: 'POST'
}, options),
params: params,
requiredParams: ['achievementId'],
pathParams: ['achievementId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* gamesManagement.achievements.resetAll
*
* @desc Resets all achievements for the currently authenticated player for your application. This method is only accessible to whitelisted tester accounts for your application.
*
* @alias gamesManagement.achievements.resetAll
* @memberOf! gamesManagement(v1management)
*
* @param {object=} params Parameters for request
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
resetAll: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/games/v1management/achievements/reset',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* gamesManagement.achievements.resetAllForAllPlayers
*
* @desc Resets all draft achievements for all players. This method is only available to user accounts for your developer console.
*
* @alias gamesManagement.achievements.resetAllForAllPlayers
* @memberOf! gamesManagement(v1management)
*
* @param {object=} params Parameters for request
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
resetAllForAllPlayers: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/games/v1management/achievements/resetAllForAllPlayers',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* gamesManagement.achievements.resetForAllPlayers
*
* @desc Resets the achievement with the given ID for all players. This method is only available to user accounts for your developer console. Only draft achievements can be reset.
*
* @alias gamesManagement.achievements.resetForAllPlayers
* @memberOf! gamesManagement(v1management)
*
* @param {object} params Parameters for request
* @param {string} params.achievementId The ID of the achievement used by this method.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
resetForAllPlayers: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/games/v1management/achievements/{achievementId}/resetForAllPlayers',
method: 'POST'
}, options),
params: params,
requiredParams: ['achievementId'],
pathParams: ['achievementId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* gamesManagement.achievements.resetMultipleForAllPlayers
*
* @desc Resets achievements with the given IDs for all players. This method is only available to user accounts for your developer console. Only draft achievements may be reset.
*
* @alias gamesManagement.achievements.resetMultipleForAllPlayers
* @memberOf! gamesManagement(v1management)
*
* @param {object} params Parameters for request
* @param {gamesManagement(v1management).AchievementResetMultipleForAllRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
resetMultipleForAllPlayers: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/games/v1management/achievements/resetMultipleForAllPlayers',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.applications = {
/**
* gamesManagement.applications.listHidden
*
* @desc Get the list of players hidden from the given application. This method is only available to user accounts for your developer console.
*
* @alias gamesManagement.applications.listHidden
* @memberOf! gamesManagement(v1management)
*
* @param {object} params Parameters for request
* @param {string} params.applicationId The application ID from the Google Play developer console.
* @param {integer=} params.maxResults The maximum number of player resources to return in the response, used for paging. For any response, the actual number of player resources returned may be less than the specified maxResults.
* @param {string=} params.pageToken The token returned by the previous request.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
listHidden: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/games/v1management/applications/{applicationId}/players/hidden',
method: 'GET'
}, options),
params: params,
requiredParams: ['applicationId'],
pathParams: ['applicationId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.events = {
/**
* gamesManagement.events.reset
*
* @desc Resets all player progress on the event with the given ID for the currently authenticated player. This method is only accessible to whitelisted tester accounts for your application. All quests for this player that use the event will also be reset.
*
* @alias gamesManagement.events.reset
* @memberOf! gamesManagement(v1management)
*
* @param {object} params Parameters for request
* @param {string} params.eventId The ID of the event.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
reset: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/games/v1management/events/{eventId}/reset',
method: 'POST'
}, options),
params: params,
requiredParams: ['eventId'],
pathParams: ['eventId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* gamesManagement.events.resetAll
*
* @desc Resets all player progress on all events for the currently authenticated player. This method is only accessible to whitelisted tester accounts for your application. All quests for this player will also be reset.
*
* @alias gamesManagement.events.resetAll
* @memberOf! gamesManagement(v1management)
*
* @param {object=} params Parameters for request
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
resetAll: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/games/v1management/events/reset',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* gamesManagement.events.resetAllForAllPlayers
*
* @desc Resets all draft events for all players. This method is only available to user accounts for your developer console. All quests that use any of these events will also be reset.
*
* @alias gamesManagement.events.resetAllForAllPlayers
* @memberOf! gamesManagement(v1management)
*
* @param {object=} params Parameters for request
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
resetAllForAllPlayers: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/games/v1management/events/resetAllForAllPlayers',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* gamesManagement.events.resetForAllPlayers
*
* @desc Resets the event with the given ID for all players. This method is only available to user accounts for your developer console. Only draft events can be reset. All quests that use the event will also be reset.
*
* @alias gamesManagement.events.resetForAllPlayers
* @memberOf! gamesManagement(v1management)
*
* @param {object} params Parameters for request
* @param {string} params.eventId The ID of the event.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
resetForAllPlayers: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/games/v1management/events/{eventId}/resetForAllPlayers',
method: 'POST'
}, options),
params: params,
requiredParams: ['eventId'],
pathParams: ['eventId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* gamesManagement.events.resetMultipleForAllPlayers
*
* @desc Resets events with the given IDs for all players. This method is only available to user accounts for your developer console. Only draft events may be reset. All quests that use any of the events will also be reset.
*
* @alias gamesManagement.events.resetMultipleForAllPlayers
* @memberOf! gamesManagement(v1management)
*
* @param {object} params Parameters for request
* @param {gamesManagement(v1management).EventsResetMultipleForAllRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
resetMultipleForAllPlayers: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/games/v1management/events/resetMultipleForAllPlayers',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.players = {
/**
* gamesManagement.players.hide
*
* @desc Hide the given player's leaderboard scores from the given application. This method is only available to user accounts for your developer console.
*
* @alias gamesManagement.players.hide
* @memberOf! gamesManagement(v1management)
*
* @param {object} params Parameters for request
* @param {string} params.applicationId The application ID from the Google Play developer console.
* @param {string} params.playerId A player ID. A value of me may be used in place of the authenticated player's ID.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
hide: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/games/v1management/applications/{applicationId}/players/hidden/{playerId}',
method: 'POST'
}, options),
params: params,
requiredParams: ['applicationId', 'playerId'],
pathParams: ['applicationId', 'playerId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* gamesManagement.players.unhide
*
* @desc Unhide the given player's leaderboard scores from the given application. This method is only available to user accounts for your developer console.
*
* @alias gamesManagement.players.unhide
* @memberOf! gamesManagement(v1management)
*
* @param {object} params Parameters for request
* @param {string} params.applicationId The application ID from the Google Play developer console.
* @param {string} params.playerId A player ID. A value of me may be used in place of the authenticated player's ID.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
unhide: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/games/v1management/applications/{applicationId}/players/hidden/{playerId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['applicationId', 'playerId'],
pathParams: ['applicationId', 'playerId'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.quests = {
/**
* gamesManagement.quests.reset
*
* @desc Resets all player progress on the quest with the given ID for the currently authenticated player. This method is only accessible to whitelisted tester accounts for your application.
*
* @alias gamesManagement.quests.reset
* @memberOf! gamesManagement(v1management)
*
* @param {object} params Parameters for request
* @param {string} params.questId The ID of the quest.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
reset: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/games/v1management/quests/{questId}/reset',
method: 'POST'
}, options),
params: params,
requiredParams: ['questId'],
pathParams: ['questId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* gamesManagement.quests.resetAll
*
* @desc Resets all player progress on all quests for the currently authenticated player. This method is only accessible to whitelisted tester accounts for your application.
*
* @alias gamesManagement.quests.resetAll
* @memberOf! gamesManagement(v1management)
*
* @param {object=} params Parameters for request
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
resetAll: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/games/v1management/quests/reset',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* gamesManagement.quests.resetAllForAllPlayers
*
* @desc Resets all draft quests for all players. This method is only available to user accounts for your developer console.
*
* @alias gamesManagement.quests.resetAllForAllPlayers
* @memberOf! gamesManagement(v1management)
*
* @param {object=} params Parameters for request
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
resetAllForAllPlayers: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/games/v1management/quests/resetAllForAllPlayers',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* gamesManagement.quests.resetForAllPlayers
*
* @desc Resets all player progress on the quest with the given ID for all players. This method is only available to user accounts for your developer console. Only draft quests can be reset.
*
* @alias gamesManagement.quests.resetForAllPlayers
* @memberOf! gamesManagement(v1management)
*
* @param {object} params Parameters for request
* @param {string} params.questId The ID of the quest.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
resetForAllPlayers: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/games/v1management/quests/{questId}/resetForAllPlayers',
method: 'POST'
}, options),
params: params,
requiredParams: ['questId'],
pathParams: ['questId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* gamesManagement.quests.resetMultipleForAllPlayers
*
* @desc Resets quests with the given IDs for all players. This method is only available to user accounts for your developer console. Only draft quests may be reset.
*
* @alias gamesManagement.quests.resetMultipleForAllPlayers
* @memberOf! gamesManagement(v1management)
*
* @param {object} params Parameters for request
* @param {gamesManagement(v1management).QuestsResetMultipleForAllRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
resetMultipleForAllPlayers: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/games/v1management/quests/resetMultipleForAllPlayers',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.rooms = {
/**
* gamesManagement.rooms.reset
*
* @desc Reset all rooms for the currently authenticated player for your application. This method is only accessible to whitelisted tester accounts for your application.
*
* @alias gamesManagement.rooms.reset
* @memberOf! gamesManagement(v1management)
*
* @param {object=} params Parameters for request
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
reset: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/games/v1management/rooms/reset',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* gamesManagement.rooms.resetForAllPlayers
*
* @desc Deletes rooms where the only room participants are from whitelisted tester accounts for your application. This method is only available to user accounts for your developer console.
*
* @alias gamesManagement.rooms.resetForAllPlayers
* @memberOf! gamesManagement(v1management)
*
* @param {object=} params Parameters for request
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
resetForAllPlayers: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/games/v1management/rooms/resetForAllPlayers',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.scores = {
/**
* gamesManagement.scores.reset
*
* @desc Resets scores for the leaderboard with the given ID for the currently authenticated player. This method is only accessible to whitelisted tester accounts for your application.
*
* @alias gamesManagement.scores.reset
* @memberOf! gamesManagement(v1management)
*
* @param {object} params Parameters for request
* @param {string} params.leaderboardId The ID of the leaderboard.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
reset: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/games/v1management/leaderboards/{leaderboardId}/scores/reset',
method: 'POST'
}, options),
params: params,
requiredParams: ['leaderboardId'],
pathParams: ['leaderboardId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* gamesManagement.scores.resetAll
*
* @desc Resets all scores for all leaderboards for the currently authenticated players. This method is only accessible to whitelisted tester accounts for your application.
*
* @alias gamesManagement.scores.resetAll
* @memberOf! gamesManagement(v1management)
*
* @param {object=} params Parameters for request
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
resetAll: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/games/v1management/scores/reset',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* gamesManagement.scores.resetAllForAllPlayers
*
* @desc Resets scores for all draft leaderboards for all players. This method is only available to user accounts for your developer console.
*
* @alias gamesManagement.scores.resetAllForAllPlayers
* @memberOf! gamesManagement(v1management)
*
* @param {object=} params Parameters for request
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
resetAllForAllPlayers: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/games/v1management/scores/resetAllForAllPlayers',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* gamesManagement.scores.resetForAllPlayers
*
* @desc Resets scores for the leaderboard with the given ID for all players. This method is only available to user accounts for your developer console. Only draft leaderboards can be reset.
*
* @alias gamesManagement.scores.resetForAllPlayers
* @memberOf! gamesManagement(v1management)
*
* @param {object} params Parameters for request
* @param {string} params.leaderboardId The ID of the leaderboard.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
resetForAllPlayers: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/games/v1management/leaderboards/{leaderboardId}/scores/resetForAllPlayers',
method: 'POST'
}, options),
params: params,
requiredParams: ['leaderboardId'],
pathParams: ['leaderboardId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* gamesManagement.scores.resetMultipleForAllPlayers
*
* @desc Resets scores for the leaderboards with the given IDs for all players. This method is only available to user accounts for your developer console. Only draft leaderboards may be reset.
*
* @alias gamesManagement.scores.resetMultipleForAllPlayers
* @memberOf! gamesManagement(v1management)
*
* @param {object} params Parameters for request
* @param {gamesManagement(v1management).ScoresResetMultipleForAllRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
resetMultipleForAllPlayers: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/games/v1management/scores/resetMultipleForAllPlayers',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.turnBasedMatches = {
/**
* gamesManagement.turnBasedMatches.reset
*
* @desc Reset all turn-based match data for a user. This method is only accessible to whitelisted tester accounts for your application.
*
* @alias gamesManagement.turnBasedMatches.reset
* @memberOf! gamesManagement(v1management)
*
* @param {object=} params Parameters for request
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
reset: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/games/v1management/turnbasedmatches/reset',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* gamesManagement.turnBasedMatches.resetForAllPlayers
*
* @desc Deletes turn-based matches where the only match participants are from whitelisted tester accounts for your application. This method is only available to user accounts for your developer console.
*
* @alias gamesManagement.turnBasedMatches.resetForAllPlayers
* @memberOf! gamesManagement(v1management)
*
* @param {object=} params Parameters for request
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
resetForAllPlayers: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/games/v1management/turnbasedmatches/resetForAllPlayers',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
};
}
/**
* @typedef AchievementResetAllResponse
* @memberOf! gamesManagement(v1management)
* @type object
* @property {string} kind Uniquely identifies the type of this resource. Value is always the fixed string gamesManagement#achievementResetAllResponse.
* @property {gamesManagement(v1management).AchievementResetResponse[]} results The achievement reset results.
*/
/**
* @typedef AchievementResetMultipleForAllRequest
* @memberOf! gamesManagement(v1management)
* @type object
* @property {string[]} achievement_ids The IDs of achievements to reset.
* @property {string} kind Uniquely identifies the type of this resource. Value is always the fixed string gamesManagement#achievementResetMultipleForAllRequest.
*/
/**
* @typedef AchievementResetResponse
* @memberOf! gamesManagement(v1management)
* @type object
* @property {string} currentState The current state of the achievement. This is the same as the initial state of the achievement.
Possible values are:
- "HIDDEN"- Achievement is hidden.
- "REVEALED" - Achievement is revealed.
- "UNLOCKED" - Achievement is unlocked.
* @property {string} definitionId The ID of an achievement for which player state has been updated.
* @property {string} kind Uniquely identifies the type of this resource. Value is always the fixed string gamesManagement#achievementResetResponse.
* @property {boolean} updateOccurred Flag to indicate if the requested update actually occurred.
*/
/**
* @typedef EventsResetMultipleForAllRequest
* @memberOf! gamesManagement(v1management)
* @type object
* @property {string[]} event_ids The IDs of events to reset.
* @property {string} kind Uniquely identifies the type of this resource. Value is always the fixed string gamesManagement#eventsResetMultipleForAllRequest.
*/
/**
* @typedef GamesPlayedResource
* @memberOf! gamesManagement(v1management)
* @type object
* @property {boolean} autoMatched True if the player was auto-matched with the currently authenticated user.
* @property {string} timeMillis The last time the player played the game in milliseconds since the epoch in UTC.
*/
/**
* @typedef GamesPlayerExperienceInfoResource
* @memberOf! gamesManagement(v1management)
* @type object
* @property {string} currentExperiencePoints The current number of experience points for the player.
* @property {gamesManagement(v1management).GamesPlayerLevelResource} currentLevel The current level of the player.
* @property {string} lastLevelUpTimestampMillis The timestamp when the player was leveled up, in millis since Unix epoch UTC.
* @property {gamesManagement(v1management).GamesPlayerLevelResource} nextLevel The next level of the player. If the current level is the maximum level, this should be same as the current level.
*/
/**
* @typedef GamesPlayerLevelResource
* @memberOf! gamesManagement(v1management)
* @type object
* @property {integer} level The level for the user.
* @property {string} maxExperiencePoints The maximum experience points for this level.
* @property {string} minExperiencePoints The minimum experience points for this level.
*/
/**
* @typedef HiddenPlayer
* @memberOf! gamesManagement(v1management)
* @type object
* @property {string} hiddenTimeMillis The time this player was hidden.
* @property {string} kind Uniquely identifies the type of this resource. Value is always the fixed string gamesManagement#hiddenPlayer.
* @property {gamesManagement(v1management).Player} player The player information.
*/
/**
* @typedef HiddenPlayerList
* @memberOf! gamesManagement(v1management)
* @type object
* @property {gamesManagement(v1management).HiddenPlayer[]} items The players.
* @property {string} kind Uniquely identifies the type of this resource. Value is always the fixed string gamesManagement#hiddenPlayerList.
* @property {string} nextPageToken The pagination token for the next page of results.
*/
/**
* @typedef Player
* @memberOf! gamesManagement(v1management)
* @type object
* @property {string} avatarImageUrl The base URL for the image that represents the player.
* @property {string} bannerUrlLandscape The url to the landscape mode player banner image.
* @property {string} bannerUrlPortrait The url to the portrait mode player banner image.
* @property {string} displayName The name to display for the player.
* @property {gamesManagement(v1management).GamesPlayerExperienceInfoResource} experienceInfo An object to represent Play Game experience information for the player.
* @property {string} kind Uniquely identifies the type of this resource. Value is always the fixed string gamesManagement#player.
* @property {gamesManagement(v1management).GamesPlayedResource} lastPlayedWith Details about the last time this player played a multiplayer game with the currently authenticated player. Populated for PLAYED_WITH player collection members.
* @property {object} name An object representation of the individual components of the player's name. For some players, these fields may not be present.
* @property {string} originalPlayerId The player ID that was used for this player the first time they signed into the game in question. This is only populated for calls to player.get for the requesting player, only if the player ID has subsequently changed, and only to clients that support remapping player IDs.
* @property {string} playerId The ID of the player.
* @property {gamesManagement(v1management).ProfileSettings} profileSettings The player's profile settings. Controls whether or not the player's profile is visible to other players.
* @property {string} title The player's title rewarded for their game activities.
*/
/**
* @typedef PlayerScoreResetAllResponse
* @memberOf! gamesManagement(v1management)
* @type object
* @property {string} kind Uniquely identifies the type of this resource. Value is always the fixed string gamesManagement#playerScoreResetResponse.
* @property {gamesManagement(v1management).PlayerScoreResetResponse[]} results The leaderboard reset results.
*/
/**
* @typedef PlayerScoreResetResponse
* @memberOf! gamesManagement(v1management)
* @type object
* @property {string} definitionId The ID of an leaderboard for which player state has been updated.
* @property {string} kind Uniquely identifies the type of this resource. Value is always the fixed string gamesManagement#playerScoreResetResponse.
* @property {string[]} resetScoreTimeSpans The time spans of the updated score.
Possible values are:
- "ALL_TIME" - The score is an all-time score.
- "WEEKLY" - The score is a weekly score.
- "DAILY" - The score is a daily score.
*/
/**
* @typedef ProfileSettings
* @memberOf! gamesManagement(v1management)
* @type object
* @property {string} kind Uniquely identifies the type of this resource. Value is always the fixed string gamesManagement#profileSettings.
* @property {boolean} profileVisible The player's current profile visibility. This field is visible to both 1P and 3P APIs.
*/
/**
* @typedef QuestsResetMultipleForAllRequest
* @memberOf! gamesManagement(v1management)
* @type object
* @property {string} kind Uniquely identifies the type of this resource. Value is always the fixed string gamesManagement#questsResetMultipleForAllRequest.
* @property {string[]} quest_ids The IDs of quests to reset.
*/
/**
* @typedef ScoresResetMultipleForAllRequest
* @memberOf! gamesManagement(v1management)
* @type object
* @property {string} kind Uniquely identifies the type of this resource. Value is always the fixed string gamesManagement#scoresResetMultipleForAllRequest.
* @property {string[]} leaderboard_ids The IDs of leaderboards to reset.
*/
module.exports = Gamesmanagement;
|
| File | Statements | Branches | Functions | Lines | |||||
|---|---|---|---|---|---|---|---|---|---|
| v1alpha2.js | 5.88% | (4 / 68) | 0% | (0 / 42) | 0% | (0 / 11) | 5.88% | (4 / 68) |
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* Genomics API
*
* Upload, process, query, and search Genomics data in the cloud.
*
* @example
* var google = require('googleapis');
* var genomics = google.genomics('v1alpha2');
*
* @namespace genomics
* @type {Function}
* @version v1alpha2
* @variation v1alpha2
* @param {object=} options Options for Genomics
*/
function Genomics(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.operations = {
/**
* genomics.operations.cancel
*
* @desc Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. Clients may use Operations.GetOperation or Operations.ListOperations to check whether the cancellation succeeded or the operation completed despite cancellation.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the Genomics API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/genomics
* // 2. This sample uses Application Default Credentials for authentication.
* // If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk and run
* // `gcloud beta auth application-default login`.
* // For more information, see
* // https://developers.google.com/identity/protocols/application-default-credentials
* // 3. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var genomics = google.genomics('v1alpha2');
*
* authorize(function(authClient) {
* var request = {
* // The name of the operation resource to be cancelled.
* name: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* genomics.operations.cancel(request, function(err) {
* if (err) {
* console.log(err);
* return;
* }
* });
* });
*
* function authorize(callback) {
* google.auth.getApplicationDefault(function(err, authClient)) {
* if (err) {
* console.log('authentication failed: ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
* callback(authClient);
* });
* }
*
* @alias genomics.operations.cancel
* @memberOf! genomics(v1alpha2)
*
* @param {object} params Parameters for request
* @param {string} params.name The name of the operation resource to be cancelled.
* @param {genomics(v1alpha2).CancelOperationRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
cancel: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://genomics.googleapis.com/v1alpha2/{name}:cancel',
method: 'POST'
}, options),
params: params,
requiredParams: ['name'],
pathParams: ['name'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* genomics.operations.list
*
* @desc Lists operations that match the specified filter in the request.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the Genomics API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/genomics
* // 2. This sample uses Application Default Credentials for authentication.
* // If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk and run
* // `gcloud beta auth application-default login`.
* // For more information, see
* // https://developers.google.com/identity/protocols/application-default-credentials
* // 3. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var genomics = google.genomics('v1alpha2');
*
* authorize(function(authClient) {
* var request = {
* // The name of the operation collection.
* name: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var operationsPage = response['operations'];
* if (!operationsPage) {
* return;
* }
* for (var i = 0; i < operationsPage.length; i++) {
* // TODO: Change code below to process each resource in `operationsPage`:
* console.log(JSON.stringify(operationsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* genomics.operations.list(request, handlePage);
* }
* };
*
* genomics.operations.list(request, handlePage);
* });
*
* function authorize(callback) {
* google.auth.getApplicationDefault(function(err, authClient)) {
* if (err) {
* console.log('authentication failed: ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
* callback(authClient);
* });
* }
*
* @alias genomics.operations.list
* @memberOf! genomics(v1alpha2)
*
* @param {object} params Parameters for request
* @param {string=} params.filter A string for filtering Operations. The following filter fields are supported: * projectId: Required. Corresponds to OperationMetadata.projectId. * createTime: The time this job was created, in seconds from the [epoch](http://en.wikipedia.org/wiki/Unix_time). Can use `>=` and/or `<=` operators. * status: Can be `RUNNING`, `SUCCESS`, `FAILURE`, or `CANCELED`. Only one status may be specified. * labels.key where key is a label key. Examples: * `projectId = my-project AND createTime >= 1432140000` * `projectId = my-project AND createTime >= 1432140000 AND createTime <= 1432150000 AND status = RUNNING` * `projectId = my-project AND labels.color = *` * `projectId = my-project AND labels.color = red`
* @param {string} params.name The name of the operation collection.
* @param {string=} params.pageToken The standard list page token.
* @param {integer=} params.pageSize The maximum number of results to return. If unspecified, defaults to 256. The maximum value is 2048.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://genomics.googleapis.com/v1alpha2/{name}',
method: 'GET'
}, options),
params: params,
requiredParams: ['name'],
pathParams: ['name'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* genomics.operations.get
*
* @desc Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the Genomics API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/genomics
* // 2. This sample uses Application Default Credentials for authentication.
* // If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk and run
* // `gcloud beta auth application-default login`.
* // For more information, see
* // https://developers.google.com/identity/protocols/application-default-credentials
* // 3. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var genomics = google.genomics('v1alpha2');
*
* authorize(function(authClient) {
* var request = {
* // The name of the operation resource.
* name: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* genomics.operations.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* google.auth.getApplicationDefault(function(err, authClient)) {
* if (err) {
* console.log('authentication failed: ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
* callback(authClient);
* });
* }
*
* @alias genomics.operations.get
* @memberOf! genomics(v1alpha2)
*
* @param {object} params Parameters for request
* @param {string} params.name The name of the operation resource.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://genomics.googleapis.com/v1alpha2/{name}',
method: 'GET'
}, options),
params: params,
requiredParams: ['name'],
pathParams: ['name'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.pipelines = {
/**
* genomics.pipelines.get
*
* @desc Retrieves a pipeline based on ID. Caller must have READ permission to the project.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the Genomics API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/genomics
* // 2. This sample uses Application Default Credentials for authentication.
* // If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk and run
* // `gcloud beta auth application-default login`.
* // For more information, see
* // https://developers.google.com/identity/protocols/application-default-credentials
* // 3. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var genomics = google.genomics('v1alpha2');
*
* authorize(function(authClient) {
* var request = {
* // Caller must have READ access to the project in which this pipeline
* // is defined.
* pipelineId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* genomics.pipelines.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* google.auth.getApplicationDefault(function(err, authClient)) {
* if (err) {
* console.log('authentication failed: ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
* callback(authClient);
* });
* }
*
* @alias genomics.pipelines.get
* @memberOf! genomics(v1alpha2)
*
* @param {object} params Parameters for request
* @param {string} params.pipelineId Caller must have READ access to the project in which this pipeline is defined.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://genomics.googleapis.com/v1alpha2/pipelines/{pipelineId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['pipelineId'],
pathParams: ['pipelineId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* genomics.pipelines.setOperationStatus
*
* @desc Sets status of a given operation. Any new timestamps (as determined by description) are appended to TimestampEvents. Should only be called by VMs created by the Pipelines Service and not by end users.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the Genomics API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/genomics
* // 2. This sample uses Application Default Credentials for authentication.
* // If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk and run
* // `gcloud beta auth application-default login`.
* // For more information, see
* // https://developers.google.com/identity/protocols/application-default-credentials
* // 3. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var genomics = google.genomics('v1alpha2');
*
* authorize(function(authClient) {
* var request = {
* resource: {
* // TODO: Add desired properties to the request body. All existing properties
* // will be replaced.
* },
*
* auth: authClient
* };
*
* genomics.pipelines.setOperationStatus(request, function(err) {
* if (err) {
* console.log(err);
* return;
* }
* });
* });
*
* function authorize(callback) {
* google.auth.getApplicationDefault(function(err, authClient)) {
* if (err) {
* console.log('authentication failed: ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
* callback(authClient);
* });
* }
*
* @alias genomics.pipelines.setOperationStatus
* @memberOf! genomics(v1alpha2)
*
* @param {object} params Parameters for request
* @param {genomics(v1alpha2).SetOperationStatusRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
setOperationStatus: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://genomics.googleapis.com/v1alpha2/pipelines:setOperationStatus',
method: 'PUT'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* genomics.pipelines.getControllerConfig
*
* @desc Gets controller configuration information. Should only be called by VMs created by the Pipelines Service and not by end users.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the Genomics API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/genomics
* // 2. This sample uses Application Default Credentials for authentication.
* // If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk and run
* // `gcloud beta auth application-default login`.
* // For more information, see
* // https://developers.google.com/identity/protocols/application-default-credentials
* // 3. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var genomics = google.genomics('v1alpha2');
*
* authorize(function(authClient) {
* var request = {
* auth: authClient
* };
*
* genomics.pipelines.getControllerConfig(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* google.auth.getApplicationDefault(function(err, authClient)) {
* if (err) {
* console.log('authentication failed: ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
* callback(authClient);
* });
* }
*
* @alias genomics.pipelines.getControllerConfig
* @memberOf! genomics(v1alpha2)
*
* @param {object} params Parameters for request
* @param {string=} params.operationId The operation to retrieve controller configuration for.
* @param {string=} params.validationToken
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
getControllerConfig: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://genomics.googleapis.com/v1alpha2/pipelines:getControllerConfig',
method: 'GET'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* genomics.pipelines.delete
*
* @desc Deletes a pipeline based on ID. Caller must have WRITE permission to the project.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the Genomics API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/genomics
* // 2. This sample uses Application Default Credentials for authentication.
* // If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk and run
* // `gcloud beta auth application-default login`.
* // For more information, see
* // https://developers.google.com/identity/protocols/application-default-credentials
* // 3. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var genomics = google.genomics('v1alpha2');
*
* authorize(function(authClient) {
* var request = {
* // Caller must have WRITE access to the project in which this pipeline
* // is defined.
* pipelineId: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* genomics.pipelines.delete(request, function(err) {
* if (err) {
* console.log(err);
* return;
* }
* });
* });
*
* function authorize(callback) {
* google.auth.getApplicationDefault(function(err, authClient)) {
* if (err) {
* console.log('authentication failed: ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
* callback(authClient);
* });
* }
*
* @alias genomics.pipelines.delete
* @memberOf! genomics(v1alpha2)
*
* @param {object} params Parameters for request
* @param {string} params.pipelineId Caller must have WRITE access to the project in which this pipeline is defined.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://genomics.googleapis.com/v1alpha2/pipelines/{pipelineId}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['pipelineId'],
pathParams: ['pipelineId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* genomics.pipelines.list
*
* @desc Lists pipelines. Caller must have READ permission to the project.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the Genomics API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/genomics
* // 2. This sample uses Application Default Credentials for authentication.
* // If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk and run
* // `gcloud beta auth application-default login`.
* // For more information, see
* // https://developers.google.com/identity/protocols/application-default-credentials
* // 3. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var genomics = google.genomics('v1alpha2');
*
* authorize(function(authClient) {
* var request = {
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var pipelinesPage = response['pipelines'];
* if (!pipelinesPage) {
* return;
* }
* for (var i = 0; i < pipelinesPage.length; i++) {
* // TODO: Change code below to process each resource in `pipelinesPage`:
* console.log(JSON.stringify(pipelinesPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* genomics.pipelines.list(request, handlePage);
* }
* };
*
* genomics.pipelines.list(request, handlePage);
* });
*
* function authorize(callback) {
* google.auth.getApplicationDefault(function(err, authClient)) {
* if (err) {
* console.log('authentication failed: ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
* callback(authClient);
* });
* }
*
* @alias genomics.pipelines.list
* @memberOf! genomics(v1alpha2)
*
* @param {object} params Parameters for request
* @param {integer=} params.pageSize Number of pipelines to return at once. Defaults to 256, and max is 2048.
* @param {string=} params.projectId Required. The name of the project to search for pipelines. Caller must have READ access to this project.
* @param {string=} params.namePrefix Pipelines with names that match this prefix should be returned. If unspecified, all pipelines in the project, up to `pageSize`, will be returned.
* @param {string=} params.pageToken Token to use to indicate where to start getting results. If unspecified, returns the first page of results.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://genomics.googleapis.com/v1alpha2/pipelines',
method: 'GET'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* genomics.pipelines.create
*
* @desc Creates a pipeline that can be run later. Create takes a Pipeline that has all fields other than `pipelineId` populated, and then returns the same pipeline with `pipelineId` populated. This id can be used to run the pipeline. Caller must have WRITE permission to the project.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the Genomics API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/genomics
* // 2. This sample uses Application Default Credentials for authentication.
* // If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk and run
* // `gcloud beta auth application-default login`.
* // For more information, see
* // https://developers.google.com/identity/protocols/application-default-credentials
* // 3. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var genomics = google.genomics('v1alpha2');
*
* authorize(function(authClient) {
* var request = {
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* genomics.pipelines.create(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* google.auth.getApplicationDefault(function(err, authClient)) {
* if (err) {
* console.log('authentication failed: ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
* callback(authClient);
* });
* }
*
* @alias genomics.pipelines.create
* @memberOf! genomics(v1alpha2)
*
* @param {object} params Parameters for request
* @param {genomics(v1alpha2).Pipeline} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
create: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://genomics.googleapis.com/v1alpha2/pipelines',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* genomics.pipelines.run
*
* @desc Runs a pipeline. If `pipelineId` is specified in the request, then run a saved pipeline. If `ephemeralPipeline` is specified, then run that pipeline once without saving a copy. The caller must have READ permission to the project where the pipeline is stored and WRITE permission to the project where the pipeline will be run, as VMs will be created and storage will be used. If a pipeline operation is still running after 6 days, it will be canceled.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the Genomics API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/genomics
* // 2. This sample uses Application Default Credentials for authentication.
* // If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk and run
* // `gcloud beta auth application-default login`.
* // For more information, see
* // https://developers.google.com/identity/protocols/application-default-credentials
* // 3. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var genomics = google.genomics('v1alpha2');
*
* authorize(function(authClient) {
* var request = {
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* genomics.pipelines.run(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* google.auth.getApplicationDefault(function(err, authClient)) {
* if (err) {
* console.log('authentication failed: ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
* callback(authClient);
* });
* }
*
* @alias genomics.pipelines.run
* @memberOf! genomics(v1alpha2)
*
* @param {object} params Parameters for request
* @param {genomics(v1alpha2).RunPipelineRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
run: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://genomics.googleapis.com/v1alpha2/pipelines:run',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
};
}
/**
* @typedef RunPipelineRequest
* @memberOf! genomics(v1alpha2)
* @type object
* @property {string} pipelineId The already created pipeline to run.
* @property {genomics(v1alpha2).Pipeline} ephemeralPipeline A new pipeline object to run once and then delete.
* @property {genomics(v1alpha2).RunPipelineArgs} pipelineArgs The arguments to use when running this pipeline.
*/
/**
* @typedef CancelOperationRequest
* @memberOf! genomics(v1alpha2)
* @type object
*/
/**
* @typedef Operation
* @memberOf! genomics(v1alpha2)
* @type object
* @property {genomics(v1alpha2).Status} error The error result of the operation in case of failure or cancellation.
* @property {object} metadata An OperationMetadata object. This will always be returned with the Operation.
* @property {boolean} done If the value is `false`, it means the operation is still in progress.
If true, the operation is completed, and either `error` or `response` is
available.
* @property {object} response If importing ReadGroupSets, an ImportReadGroupSetsResponse is returned. If importing Variants, an ImportVariantsResponse is returned. For pipelines and exports, an empty response is returned.
* @property {string} name The server-assigned name, which is only unique within the same service that originally returns it. For example&#58; `operations/CJHU7Oi_ChDrveSpBRjfuL-qzoWAgEw`
*/
/**
* @typedef RuntimeMetadata
* @memberOf! genomics(v1alpha2)
* @type object
* @property {genomics(v1alpha2).ComputeEngine} computeEngine Execution information specific to Google Compute Engine.
*/
/**
* @typedef ImportReadGroupSetsResponse
* @memberOf! genomics(v1alpha2)
* @type object
* @property {string[]} readGroupSetIds IDs of the read group sets that were created.
*/
/**
* @typedef Status
* @memberOf! genomics(v1alpha2)
* @type object
* @property {integer} code The status code, which should be an enum value of google.rpc.Code.
* @property {string} message A developer-facing error message, which should be in English. Any
user-facing error message should be localized and sent in the
google.rpc.Status.details field, or localized by the client.
* @property {object[]} details A list of messages that carry the error details. There will be a
common set of message types for APIs to use.
*/
/**
* @typedef ServiceAccount
* @memberOf! genomics(v1alpha2)
* @type object
* @property {string} email Email address of the service account. Defaults to `default`,
which uses the compute service account associated with the project.
* @property {string[]} scopes List of scopes to be enabled for this service account on the VM.
The following scopes are automatically included:
* https://www.googleapis.com/auth/compute
* https://www.googleapis.com/auth/devstorage.full_control
* https://www.googleapis.com/auth/genomics
* https://www.googleapis.com/auth/logging.write
* https://www.googleapis.com/auth/monitoring.write
*/
/**
* @typedef Pipeline
* @memberOf! genomics(v1alpha2)
* @type object
* @property {genomics(v1alpha2).PipelineResources} resources Required. Specifies resource requirements for the pipeline run.
Required fields:
*
minimumCpuCores
*
minimumRamGb
* @property {string} name Required. A user specified pipeline name that does not have to be unique.
This name can be used for filtering Pipelines in ListPipelines.
* @property {string} projectId Required. The project in which to create the pipeline. The caller must have
WRITE access.
* @property {string} pipelineId Unique pipeline id that is generated by the service when CreatePipeline
is called. Cannot be specified in the Pipeline used in the
CreatePipelineRequest, and will be populated in the response to
CreatePipeline and all subsequent Get and List calls. Indicates that the
service has registered this pipeline.
* @property {genomics(v1alpha2).PipelineParameter[]} outputParameters Output parameters of the pipeline.
* @property {genomics(v1alpha2).DockerExecutor} docker Specifies the docker run information.
* @property {string} description User-specified description.
* @property {genomics(v1alpha2).PipelineParameter[]} inputParameters Input parameters of the pipeline.
*/
/**
* @typedef PipelineResources
* @memberOf! genomics(v1alpha2)
* @type object
* @property {boolean} noAddress Whether to assign an external IP to the instance. This is an experimental
feature that may go away. Defaults to false.
Corresponds to `--no_address` flag for [gcloud compute instances create]
(https://cloud.google.com/sdk/gcloud/reference/compute/instances/create).
In order to use this, must be true for both create time and run time.
Cannot be true at run time if false at create time. If you need to ssh into
a private IP VM for debugging, you can ssh to a public VM and then ssh into
the private VM's Internal IP. If noAddress is set, this pipeline run may
only load docker images from Google Container Registry and not Docker Hub.
Before using this, you must
[configure access to Google services from internal IPs](https://cloud.google.com/compute/docs/configure-private-google-access#configuring_access_to_google_services_from_internal_ips).
* @property {genomics(v1alpha2).Disk[]} disks Disks to attach.
* @property {integer} bootDiskSizeGb The size of the boot disk. Defaults to 10 (GB).
* @property {boolean} preemptible Whether to use preemptible VMs. Defaults to `false`. In order to use this,
must be true for both create time and run time. Cannot be true at run time
if false at create time.
* @property {number} minimumRamGb The minimum amount of RAM to use. Defaults to 3.75 (GB)
* @property {string[]} zones List of Google Compute Engine availability zones to which resource
creation will restricted. If empty, any zone may be chosen.
* @property {integer} minimumCpuCores The minimum number of cores to use. Defaults to 1.
*/
/**
* @typedef OperationEvent
* @memberOf! genomics(v1alpha2)
* @type object
* @property {string} endTime Optional time of when event finished. An event can have a start time and no
finish time. If an event has a finish time, there must be a start time.
* @property {string} startTime Optional time of when event started.
* @property {string} description Required description of event.
*/
/**
* @typedef ControllerConfig
* @memberOf! genomics(v1alpha2)
* @type object
* @property {string} image
* @property {string} gcsLogPath
* @property {object} gcsSources
* @property {object} gcsSinks
* @property {object} disks
* @property {string} machineType
* @property {string} cmd
* @property {object} vars
*/
/**
* @typedef RepeatedString
* @memberOf! genomics(v1alpha2)
* @type object
* @property {string[]} values
*/
/**
* @typedef ListOperationsResponse
* @memberOf! genomics(v1alpha2)
* @type object
* @property {genomics(v1alpha2).Operation[]} operations A list of operations that matches the specified filter in the request.
* @property {string} nextPageToken The standard List next-page token.
*/
/**
* @typedef OperationMetadata
* @memberOf! genomics(v1alpha2)
* @type object
* @property {string} projectId The Google Cloud Project in which the job is scoped.
* @property {string} clientId This field is deprecated. Use `labels` instead. Optionally provided by the
caller when submitting the request that creates the operation.
* @property {string} endTime The time at which the job stopped running.
* @property {genomics(v1alpha2).OperationEvent[]} events Optional event messages that were generated during the job's execution.
This also contains any warnings that were generated during import
or export.
* @property {string} startTime The time at which the job began to run.
* @property {object} request The original request that started the operation. Note that this will be in
current version of the API. If the operation was started with v1beta2 API
and a GetOperation is performed on v1 API, a v1 request will be returned.
* @property {object} runtimeMetadata Runtime metadata on this Operation.
* @property {object} labels Optionally provided by the caller when submitting the request that creates
the operation.
* @property {string} createTime The time at which the job was submitted to the Genomics service.
*/
/**
* @typedef RunPipelineArgs
* @memberOf! genomics(v1alpha2)
* @type object
* @property {object} labels Labels to apply to this pipeline run. Labels will also be applied to
compute resources (VM, disks) created by this pipeline run. When listing
operations, operations can filtered by labels.
Label keys may not be empty; label values may be empty. Non-empty labels
must be 1-63 characters long, and comply with [RFC1035]
(https://www.ietf.org/rfc/rfc1035.txt).
Specifically, the name must be 1-63 characters long and match the regular
expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first
character must be a lowercase letter, and all following characters must be
a dash, lowercase letter, or digit, except the last character, which cannot
be a dash.
* @property {genomics(v1alpha2).LoggingOptions} logging Required. Logging options. Used by the service to communicate results
to the user.
* @property {string} keepVmAliveOnFailureDuration How long to keep the VM up after a failure (for example docker command
failed, copying input or output files failed, etc). While the VM is up, one
can ssh into the VM to debug. Default is 0; maximum allowed value is 1 day.
* @property {genomics(v1alpha2).PipelineResources} resources Specifies resource requirements/overrides for the pipeline run.
* @property {object} outputs Pipeline output arguments; keys are defined in the pipeline
documentation. All output parameters of without default values
must be specified. If parameters with defaults are specified
here, the defaults will be overridden.
* @property {string} projectId Required. The project in which to run the pipeline. The caller must have
WRITER access to all Google Cloud services and resources (e.g. Google
Compute Engine) will be used.
* @property {string} clientId This field is deprecated. Use `labels` instead. Client-specified pipeline
operation identifier.
* @property {genomics(v1alpha2).ServiceAccount} serviceAccount The Google Cloud Service Account that will be used to access data and
services. By default, the compute service account associated with
`projectId` is used.
* @property {object} inputs Pipeline input arguments; keys are defined in the pipeline documentation.
All input parameters that do not have default values must be specified.
If parameters with defaults are specified here, the defaults will be
overridden.
*/
/**
* @typedef ListPipelinesResponse
* @memberOf! genomics(v1alpha2)
* @type object
* @property {string} nextPageToken The token to use to get the next page of results.
* @property {genomics(v1alpha2).Pipeline[]} pipelines The matched pipelines.
*/
/**
* @typedef SetOperationStatusRequest
* @memberOf! genomics(v1alpha2)
* @type object
* @property {string} errorCode
* @property {genomics(v1alpha2).TimestampEvent[]} timestampEvents
* @property {string} operationId
* @property {string} errorMessage
* @property {string} validationToken
*/
/**
* @typedef ComputeEngine
* @memberOf! genomics(v1alpha2)
* @type object
* @property {string} instanceName The instance on which the operation is running.
* @property {string} zone The availability zone in which the instance resides.
* @property {string} machineType The machine type of the instance.
* @property {string[]} diskNames The names of the disks that were created for this pipeline.
*/
/**
* @typedef ImportVariantsResponse
* @memberOf! genomics(v1alpha2)
* @type object
* @property {string[]} callSetIds IDs of the call sets created during the import.
*/
/**
* @typedef TimestampEvent
* @memberOf! genomics(v1alpha2)
* @type object
* @property {string} description String indicating the type of event
* @property {string} timestamp The time this event occured.
*/
/**
* @typedef LocalCopy
* @memberOf! genomics(v1alpha2)
* @type object
* @property {string} disk Required. The name of the disk where this parameter is
located. Can be the name of one of the disks specified in the
Resources field, or "boot", which represents the Docker
instance's boot disk and has a mount point of `/`.
* @property {string} path Required. The path within the user's docker container where
this input should be localized to and from, relative to the specified
disk's mount point. For example: file.txt,
*/
/**
* @typedef DockerExecutor
* @memberOf! genomics(v1alpha2)
* @type object
* @property {string} cmd Required. The command or newline delimited script to run. The command
string will be executed within a bash shell.
If the command exits with a non-zero exit code, output parameter
de-localization will be skipped and the pipeline operation's
`error` field will be populated.
Maximum command string length is 16384.
* @property {string} imageName Required. Image name from either Docker Hub or Google Container Registry.
Users that run pipelines must have READ access to the image.
*/
/**
* @typedef Disk
* @memberOf! genomics(v1alpha2)
* @type object
* @property {string} type Required. The type of the disk to create.
* @property {boolean} autoDelete Deprecated. Disks created by the Pipelines API will be deleted at the end
of the pipeline run, regardless of what this field is set to.
* @property {integer} sizeGb The size of the disk. Defaults to 500 (GB).
This field is not applicable for local SSD.
* @property {string} mountPoint Required at create time and cannot be overridden at run time.
Specifies the path in the docker container where files on
this disk should be located. For example, if `mountPoint`
is `/mnt/disk`, and the parameter has `localPath`
`inputs/file.txt`, the docker container can access the data at
`/mnt/disk/inputs/file.txt`.
* @property {string} source The full or partial URL of the persistent disk to attach. See
https://cloud.google.com/compute/docs/reference/latest/instances#resource
and
https://cloud.google.com/compute/docs/disks/persistent-disks#snapshots
for more details.
* @property {string} name Required. The name of the disk that can be used in the pipeline
parameters. Must be 1 - 63 characters.
The name "boot" is reserved for system use.
*/
/**
* @typedef Empty
* @memberOf! genomics(v1alpha2)
* @type object
*/
/**
* @typedef PipelineParameter
* @memberOf! genomics(v1alpha2)
* @type object
* @property {string} description Human-readable description.
* @property {genomics(v1alpha2).LocalCopy} localCopy If present, this parameter is marked for copying to and from the VM.
`LocalCopy` indicates where on the VM the file should be. The value
given to this parameter (either at runtime or using `defaultValue`)
must be the remote path where the file should be.
* @property {string} defaultValue The default value for this parameter. Can be overridden at runtime.
If `localCopy` is present, then this must be a Google Cloud Storage path
beginning with `gs://`.
* @property {string} name Required. Name of the parameter - the pipeline runner uses this string
as the key to the input and output maps in RunPipeline.
*/
/**
* @typedef LoggingOptions
* @memberOf! genomics(v1alpha2)
* @type object
* @property {string} gcsPath The location in Google Cloud Storage to which the pipeline logs
will be copied. Can be specified as a fully qualified directory
path, in which case logs will be output with a unique identifier
as the filename in that directory, or as a fully specified path,
which must end in `.log`, in which case that path will be
used, and the user must ensure that logs are not
overwritten. Stdout and stderr logs from the run are also
generated and output as `-stdout.log` and `-stderr.log`.
*/
module.exports = Genomics;
|
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* Prediction API
*
* Lets you access a cloud hosted machine learning service that makes it easy to build smart apps
*
* @example
* var google = require('googleapis');
* var prediction = google.prediction('v1.5');
*
* @namespace prediction
* @type {Function}
* @version v1.5
* @variation v1.5
* @param {object=} options Options for Prediction
*/
function Prediction(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.hostedmodels = {
/**
* prediction.hostedmodels.predict
*
* @desc Submit input and request an output against a hosted model.
*
* @alias prediction.hostedmodels.predict
* @memberOf! prediction(v1.5)
*
* @param {object} params Parameters for request
* @param {string} params.hostedModelName The name of a hosted model.
* @param {prediction(v1.5).Input} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
predict: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/prediction/v1.5/hostedmodels/{hostedModelName}/predict',
method: 'POST'
}, options),
params: params,
requiredParams: ['hostedModelName'],
pathParams: ['hostedModelName'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.trainedmodels = {
/**
* prediction.trainedmodels.analyze
*
* @desc Get analysis of the model and the data the model was trained on.
*
* @alias prediction.trainedmodels.analyze
* @memberOf! prediction(v1.5)
*
* @param {object} params Parameters for request
* @param {string} params.id The unique name for the predictive model.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
analyze: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/prediction/v1.5/trainedmodels/{id}/analyze',
method: 'GET'
}, options),
params: params,
requiredParams: ['id'],
pathParams: ['id'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* prediction.trainedmodels.delete
*
* @desc Delete a trained model.
*
* @alias prediction.trainedmodels.delete
* @memberOf! prediction(v1.5)
*
* @param {object} params Parameters for request
* @param {string} params.id The unique name for the predictive model.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/prediction/v1.5/trainedmodels/{id}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['id'],
pathParams: ['id'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* prediction.trainedmodels.get
*
* @desc Check training status of your model.
*
* @alias prediction.trainedmodels.get
* @memberOf! prediction(v1.5)
*
* @param {object} params Parameters for request
* @param {string} params.id The unique name for the predictive model.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/prediction/v1.5/trainedmodels/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['id'],
pathParams: ['id'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* prediction.trainedmodels.insert
*
* @desc Begin training your model.
*
* @alias prediction.trainedmodels.insert
* @memberOf! prediction(v1.5)
*
* @param {object} params Parameters for request
* @param {prediction(v1.5).Training} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/prediction/v1.5/trainedmodels',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* prediction.trainedmodels.list
*
* @desc List available models.
*
* @alias prediction.trainedmodels.list
* @memberOf! prediction(v1.5)
*
* @param {object=} params Parameters for request
* @param {integer=} params.maxResults Maximum number of results to return
* @param {string=} params.pageToken Pagination token
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/prediction/v1.5/trainedmodels/list',
method: 'GET'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* prediction.trainedmodels.predict
*
* @desc Submit model id and request a prediction.
*
* @alias prediction.trainedmodels.predict
* @memberOf! prediction(v1.5)
*
* @param {object} params Parameters for request
* @param {string} params.id The unique name for the predictive model.
* @param {prediction(v1.5).Input} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
predict: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/prediction/v1.5/trainedmodels/{id}/predict',
method: 'POST'
}, options),
params: params,
requiredParams: ['id'],
pathParams: ['id'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* prediction.trainedmodels.update
*
* @desc Add new data to a trained model.
*
* @alias prediction.trainedmodels.update
* @memberOf! prediction(v1.5)
*
* @param {object} params Parameters for request
* @param {string} params.id The unique name for the predictive model.
* @param {prediction(v1.5).Update} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/prediction/v1.5/trainedmodels/{id}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['id'],
pathParams: ['id'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
}
/**
* @typedef Analyze
* @memberOf! prediction(v1.5)
* @type object
* @property {object} dataDescription Description of the data the model was trained on.
* @property {object[]} errors List of errors with the data.
* @property {string} id The unique name for the predictive model.
* @property {string} kind What kind of resource this is.
* @property {object} modelDescription Description of the model.
* @property {string} selfLink A URL to re-request this resource.
*/
/**
* @typedef Input
* @memberOf! prediction(v1.5)
* @type object
* @property {object} input Input to the model for a prediction
*/
/**
* @typedef List
* @memberOf! prediction(v1.5)
* @type object
* @property {prediction(v1.5).Training[]} items List of models.
* @property {string} kind What kind of resource this is.
* @property {string} nextPageToken Pagination token to fetch the next page, if one exists.
* @property {string} selfLink A URL to re-request this resource.
*/
/**
* @typedef Output
* @memberOf! prediction(v1.5)
* @type object
* @property {string} id The unique name for the predictive model.
* @property {string} kind What kind of resource this is.
* @property {string} outputLabel The most likely class label [Categorical models only].
* @property {object[]} outputMulti A list of class labels with their estimated probabilities [Categorical models only].
* @property {number} outputValue The estimated regression value [Regression models only].
* @property {string} selfLink A URL to re-request this resource.
*/
/**
* @typedef Training
* @memberOf! prediction(v1.5)
* @type object
* @property {string} created Insert time of the model (as a RFC 3339 timestamp).
* @property {string} id The unique name for the predictive model.
* @property {string} kind What kind of resource this is.
* @property {object} modelInfo Model metadata.
* @property {string} modelType Type of predictive model (classification or regression)
* @property {string} selfLink A URL to re-request this resource.
* @property {string} storageDataLocation Google storage location of the training data file.
* @property {string} storagePMMLLocation Google storage location of the preprocessing pmml file.
* @property {string} storagePMMLModelLocation Google storage location of the pmml model file.
* @property {string} trainingComplete Training completion time (as a RFC 3339 timestamp).
* @property {object[]} trainingInstances Instances to train model on.
* @property {string} trainingStatus The current status of the training job. This can be one of following: RUNNING; DONE; ERROR; ERROR: TRAINING JOB NOT FOUND
* @property {object[]} utility A class weighting function, which allows the importance weights for class labels to be specified [Categorical models only].
*/
/**
* @typedef Update
* @memberOf! prediction(v1.5)
* @type object
* @property {any[]} csvInstance The input features for this instance
* @property {string} label The class label of this instance
* @property {string} output The generic output value - could be regression value or class label
*/
module.exports = Prediction;
|
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* Prediction API
*
* Lets you access a cloud hosted machine learning service that makes it easy to build smart apps
*
* @example
* var google = require('googleapis');
* var prediction = google.prediction('v1.6');
*
* @namespace prediction
* @type {Function}
* @version v1.6
* @variation v1.6
* @param {object=} options Options for Prediction
*/
function Prediction(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.hostedmodels = {
/**
* prediction.hostedmodels.predict
*
* @desc Submit input and request an output against a hosted model.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the Prediction API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/prediction
* // 2. This sample uses Application Default Credentials for authentication.
* // If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk and run
* // `gcloud beta auth application-default login`.
* // For more information, see
* // https://developers.google.com/identity/protocols/application-default-credentials
* // 3. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var prediction = google.prediction('v1.6');
*
* authorize(function(authClient) {
* var request = {
* // The project associated with the model.
* project: '', // TODO: Update placeholder value.
*
* // The name of a hosted model.
* hostedModelName: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* prediction.hostedmodels.predict(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* google.auth.getApplicationDefault(function(err, authClient)) {
* if (err) {
* console.log('authentication failed: ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
* callback(authClient);
* });
* }
*
* @alias prediction.hostedmodels.predict
* @memberOf! prediction(v1.6)
*
* @param {object} params Parameters for request
* @param {string} params.hostedModelName The name of a hosted model.
* @param {string} params.project The project associated with the model.
* @param {prediction(v1.6).Input} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
predict: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/prediction/v1.6/projects/{project}/hostedmodels/{hostedModelName}/predict',
method: 'POST'
}, options),
params: params,
requiredParams: ['project', 'hostedModelName'],
pathParams: ['hostedModelName', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.trainedmodels = {
/**
* prediction.trainedmodels.analyze
*
* @desc Get analysis of the model and the data the model was trained on.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the Prediction API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/prediction
* // 2. This sample uses Application Default Credentials for authentication.
* // If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk and run
* // `gcloud beta auth application-default login`.
* // For more information, see
* // https://developers.google.com/identity/protocols/application-default-credentials
* // 3. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var prediction = google.prediction('v1.6');
*
* authorize(function(authClient) {
* var request = {
* // The project associated with the model.
* project: '', // TODO: Update placeholder value.
*
* // The unique name for the predictive model.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* prediction.trainedmodels.analyze(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* google.auth.getApplicationDefault(function(err, authClient)) {
* if (err) {
* console.log('authentication failed: ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
* callback(authClient);
* });
* }
*
* @alias prediction.trainedmodels.analyze
* @memberOf! prediction(v1.6)
*
* @param {object} params Parameters for request
* @param {string} params.id The unique name for the predictive model.
* @param {string} params.project The project associated with the model.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
analyze: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/prediction/v1.6/projects/{project}/trainedmodels/{id}/analyze',
method: 'GET'
}, options),
params: params,
requiredParams: ['project', 'id'],
pathParams: ['id', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* prediction.trainedmodels.delete
*
* @desc Delete a trained model.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the Prediction API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/prediction
* // 2. This sample uses Application Default Credentials for authentication.
* // If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk and run
* // `gcloud beta auth application-default login`.
* // For more information, see
* // https://developers.google.com/identity/protocols/application-default-credentials
* // 3. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var prediction = google.prediction('v1.6');
*
* authorize(function(authClient) {
* var request = {
* // The project associated with the model.
* project: '', // TODO: Update placeholder value.
*
* // The unique name for the predictive model.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* prediction.trainedmodels.delete(request, function(err) {
* if (err) {
* console.log(err);
* return;
* }
* });
* });
*
* function authorize(callback) {
* google.auth.getApplicationDefault(function(err, authClient)) {
* if (err) {
* console.log('authentication failed: ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
* callback(authClient);
* });
* }
*
* @alias prediction.trainedmodels.delete
* @memberOf! prediction(v1.6)
*
* @param {object} params Parameters for request
* @param {string} params.id The unique name for the predictive model.
* @param {string} params.project The project associated with the model.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/prediction/v1.6/projects/{project}/trainedmodels/{id}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['project', 'id'],
pathParams: ['id', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* prediction.trainedmodels.get
*
* @desc Check training status of your model.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the Prediction API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/prediction
* // 2. This sample uses Application Default Credentials for authentication.
* // If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk and run
* // `gcloud beta auth application-default login`.
* // For more information, see
* // https://developers.google.com/identity/protocols/application-default-credentials
* // 3. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var prediction = google.prediction('v1.6');
*
* authorize(function(authClient) {
* var request = {
* // The project associated with the model.
* project: '', // TODO: Update placeholder value.
*
* // The unique name for the predictive model.
* id: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* prediction.trainedmodels.get(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* google.auth.getApplicationDefault(function(err, authClient)) {
* if (err) {
* console.log('authentication failed: ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
* callback(authClient);
* });
* }
*
* @alias prediction.trainedmodels.get
* @memberOf! prediction(v1.6)
*
* @param {object} params Parameters for request
* @param {string} params.id The unique name for the predictive model.
* @param {string} params.project The project associated with the model.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/prediction/v1.6/projects/{project}/trainedmodels/{id}',
method: 'GET'
}, options),
params: params,
requiredParams: ['project', 'id'],
pathParams: ['id', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* prediction.trainedmodels.insert
*
* @desc Train a Prediction API model.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the Prediction API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/prediction
* // 2. This sample uses Application Default Credentials for authentication.
* // If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk and run
* // `gcloud beta auth application-default login`.
* // For more information, see
* // https://developers.google.com/identity/protocols/application-default-credentials
* // 3. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var prediction = google.prediction('v1.6');
*
* authorize(function(authClient) {
* var request = {
* // The project associated with the model.
* project: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* prediction.trainedmodels.insert(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* google.auth.getApplicationDefault(function(err, authClient)) {
* if (err) {
* console.log('authentication failed: ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
* callback(authClient);
* });
* }
*
* @alias prediction.trainedmodels.insert
* @memberOf! prediction(v1.6)
*
* @param {object} params Parameters for request
* @param {string} params.project The project associated with the model.
* @param {prediction(v1.6).Insert} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
insert: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/prediction/v1.6/projects/{project}/trainedmodels',
method: 'POST'
}, options),
params: params,
requiredParams: ['project'],
pathParams: ['project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* prediction.trainedmodels.list
*
* @desc List available models.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the Prediction API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/prediction
* // 2. This sample uses Application Default Credentials for authentication.
* // If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk and run
* // `gcloud beta auth application-default login`.
* // For more information, see
* // https://developers.google.com/identity/protocols/application-default-credentials
* // 3. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var prediction = google.prediction('v1.6');
*
* authorize(function(authClient) {
* var request = {
* // The project associated with the model.
* project: '', // TODO: Update placeholder value.
*
* auth: authClient
* };
*
* var handlePage = function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* var itemsPage = response['items'];
* if (!itemsPage) {
* return;
* }
* for (var i = 0; i < itemsPage.length; i++) {
* // TODO: Change code below to process each resource in `itemsPage`:
* console.log(JSON.stringify(itemsPage[i], null, 2));
* }
*
* if (response.nextPageToken) {
* request.pageToken = response.nextPageToken;
* prediction.trainedmodels.list(request, handlePage);
* }
* };
*
* prediction.trainedmodels.list(request, handlePage);
* });
*
* function authorize(callback) {
* google.auth.getApplicationDefault(function(err, authClient)) {
* if (err) {
* console.log('authentication failed: ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
* callback(authClient);
* });
* }
*
* @alias prediction.trainedmodels.list
* @memberOf! prediction(v1.6)
*
* @param {object} params Parameters for request
* @param {integer=} params.maxResults Maximum number of results to return.
* @param {string=} params.pageToken Pagination token.
* @param {string} params.project The project associated with the model.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/prediction/v1.6/projects/{project}/trainedmodels/list',
method: 'GET'
}, options),
params: params,
requiredParams: ['project'],
pathParams: ['project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* prediction.trainedmodels.predict
*
* @desc Submit model id and request a prediction.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the Prediction API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/prediction
* // 2. This sample uses Application Default Credentials for authentication.
* // If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk and run
* // `gcloud beta auth application-default login`.
* // For more information, see
* // https://developers.google.com/identity/protocols/application-default-credentials
* // 3. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var prediction = google.prediction('v1.6');
*
* authorize(function(authClient) {
* var request = {
* // The project associated with the model.
* project: '', // TODO: Update placeholder value.
*
* // The unique name for the predictive model.
* id: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body.
* },
*
* auth: authClient
* };
*
* prediction.trainedmodels.predict(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* google.auth.getApplicationDefault(function(err, authClient)) {
* if (err) {
* console.log('authentication failed: ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
* callback(authClient);
* });
* }
*
* @alias prediction.trainedmodels.predict
* @memberOf! prediction(v1.6)
*
* @param {object} params Parameters for request
* @param {string} params.id The unique name for the predictive model.
* @param {string} params.project The project associated with the model.
* @param {prediction(v1.6).Input} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
predict: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/prediction/v1.6/projects/{project}/trainedmodels/{id}/predict',
method: 'POST'
}, options),
params: params,
requiredParams: ['project', 'id'],
pathParams: ['id', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* prediction.trainedmodels.update
*
* @desc Add new data to a trained model.
*
* @example
* // BEFORE RUNNING:
* // ---------------
* // 1. If not already done, enable the Prediction API
* // and check the quota for your project at
* // https://console.developers.google.com/apis/api/prediction
* // 2. This sample uses Application Default Credentials for authentication.
* // If not already done, install the gcloud CLI from
* // https://cloud.google.com/sdk and run
* // `gcloud beta auth application-default login`.
* // For more information, see
* // https://developers.google.com/identity/protocols/application-default-credentials
* // 3. Install the Node.js client library by running
* // `npm install googleapis --save`
*
* var google = require('googleapis');
* var prediction = google.prediction('v1.6');
*
* authorize(function(authClient) {
* var request = {
* // The project associated with the model.
* project: '', // TODO: Update placeholder value.
*
* // The unique name for the predictive model.
* id: '', // TODO: Update placeholder value.
*
* resource: {
* // TODO: Add desired properties to the request body. All existing properties
* // will be replaced.
* },
*
* auth: authClient
* };
*
* prediction.trainedmodels.update(request, function(err, response) {
* if (err) {
* console.log(err);
* return;
* }
*
* // TODO: Change code below to process the `response` object:
* console.log(JSON.stringify(response, null, 2));
* });
* });
*
* function authorize(callback) {
* google.auth.getApplicationDefault(function(err, authClient)) {
* if (err) {
* console.log('authentication failed: ', err);
* return;
* }
* if (authClient.createScopedRequired && authClient.createScopedRequired()) {
* var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
* authClient = authClient.createScoped(scopes);
* }
* callback(authClient);
* });
* }
*
* @alias prediction.trainedmodels.update
* @memberOf! prediction(v1.6)
*
* @param {object} params Parameters for request
* @param {string} params.id The unique name for the predictive model.
* @param {string} params.project The project associated with the model.
* @param {prediction(v1.6).Update} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
update: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/prediction/v1.6/projects/{project}/trainedmodels/{id}',
method: 'PUT'
}, options),
params: params,
requiredParams: ['project', 'id'],
pathParams: ['id', 'project'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
}
/**
* @typedef Analyze
* @memberOf! prediction(v1.6)
* @type object
* @property {object} dataDescription Description of the data the model was trained on.
* @property {object[]} errors List of errors with the data.
* @property {string} id The unique name for the predictive model.
* @property {string} kind What kind of resource this is.
* @property {object} modelDescription Description of the model.
* @property {string} selfLink A URL to re-request this resource.
*/
/**
* @typedef Input
* @memberOf! prediction(v1.6)
* @type object
* @property {object} input Input to the model for a prediction.
*/
/**
* @typedef Insert
* @memberOf! prediction(v1.6)
* @type object
* @property {string} id The unique name for the predictive model.
* @property {string} modelType Type of predictive model (classification or regression).
* @property {string} sourceModel The Id of the model to be copied over.
* @property {string} storageDataLocation Google storage location of the training data file.
* @property {string} storagePMMLLocation Google storage location of the preprocessing pmml file.
* @property {string} storagePMMLModelLocation Google storage location of the pmml model file.
* @property {object[]} trainingInstances Instances to train model on.
* @property {object[]} utility A class weighting function, which allows the importance weights for class labels to be specified (Categorical models only).
*/
/**
* @typedef Insert2
* @memberOf! prediction(v1.6)
* @type object
* @property {string} created Insert time of the model (as a RFC 3339 timestamp).
* @property {string} id The unique name for the predictive model.
* @property {string} kind What kind of resource this is.
* @property {object} modelInfo Model metadata.
* @property {string} modelType Type of predictive model (CLASSIFICATION or REGRESSION).
* @property {string} selfLink A URL to re-request this resource.
* @property {string} storageDataLocation Google storage location of the training data file.
* @property {string} storagePMMLLocation Google storage location of the preprocessing pmml file.
* @property {string} storagePMMLModelLocation Google storage location of the pmml model file.
* @property {string} trainingComplete Training completion time (as a RFC 3339 timestamp).
* @property {string} trainingStatus The current status of the training job. This can be one of following: RUNNING; DONE; ERROR; ERROR: TRAINING JOB NOT FOUND
*/
/**
* @typedef List
* @memberOf! prediction(v1.6)
* @type object
* @property {prediction(v1.6).Insert2[]} items List of models.
* @property {string} kind What kind of resource this is.
* @property {string} nextPageToken Pagination token to fetch the next page, if one exists.
* @property {string} selfLink A URL to re-request this resource.
*/
/**
* @typedef Output
* @memberOf! prediction(v1.6)
* @type object
* @property {string} id The unique name for the predictive model.
* @property {string} kind What kind of resource this is.
* @property {string} outputLabel The most likely class label (Categorical models only).
* @property {object[]} outputMulti A list of class labels with their estimated probabilities (Categorical models only).
* @property {string} outputValue The estimated regression value (Regression models only).
* @property {string} selfLink A URL to re-request this resource.
*/
/**
* @typedef Update
* @memberOf! prediction(v1.6)
* @type object
* @property {any[]} csvInstance The input features for this instance.
* @property {string} output The generic output value - could be regression or class label.
*/
module.exports = Prediction;
|
| File | Statements | Branches | Functions | Lines | |||||
|---|---|---|---|---|---|---|---|---|---|
| v1beta1a.js | 4.08% | (4 / 98) | 0% | (0 / 62) | 0% | (0 / 16) | 4.08% | (4 / 98) |
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* Google Cloud Pub/Sub API
*
* Provides reliable, many-to-many, asynchronous messaging between applications.
*
* @example
* var google = require('googleapis');
* var pubsub = google.pubsub('v1beta1a');
*
* @namespace pubsub
* @type {Function}
* @version v1beta1a
* @variation v1beta1a
* @param {object=} options Options for Pubsub
*/
function Pubsub(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.subscriptions = {
/**
* pubsub.subscriptions.list
*
* @desc Lists matching subscriptions.
*
* @alias pubsub.subscriptions.list
* @memberOf! pubsub(v1beta1a)
*
* @param {object} params Parameters for request
* @param {string=} params.pageToken The value obtained in the last <code>ListSubscriptionsResponse</code> for continuation.
* @param {string=} params.query A valid label query expression.
* @param {integer=} params.maxResults Maximum number of subscriptions to return.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://pubsub.googleapis.com/v1beta1a/subscriptions',
method: 'GET'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* pubsub.subscriptions.create
*
* @desc Creates a subscription on a given topic for a given subscriber. If the subscription already exists, returns ALREADY_EXISTS. If the corresponding topic doesn't exist, returns NOT_FOUND. If the name is not provided in the request, the server will assign a random name for this subscription on the same project as the topic.
*
* @alias pubsub.subscriptions.create
* @memberOf! pubsub(v1beta1a)
*
* @param {object} params Parameters for request
* @param {pubsub(v1beta1a).Subscription} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
create: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://pubsub.googleapis.com/v1beta1a/subscriptions',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* pubsub.subscriptions.modifyAckDeadline
*
* @desc Modifies the Ack deadline for a message received from a pull request.
*
* @alias pubsub.subscriptions.modifyAckDeadline
* @memberOf! pubsub(v1beta1a)
*
* @param {object} params Parameters for request
* @param {pubsub(v1beta1a).ModifyAckDeadlineRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
modifyAckDeadline: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://pubsub.googleapis.com/v1beta1a/subscriptions/modifyAckDeadline',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* pubsub.subscriptions.acknowledge
*
* @desc Acknowledges a particular received message: the Pub/Sub system can remove the given message from the subscription. Acknowledging a message whose Ack deadline has expired may succeed, but the message could have been already redelivered. Acknowledging a message more than once will not result in an error. This is only used for messages received via pull.
*
* @alias pubsub.subscriptions.acknowledge
* @memberOf! pubsub(v1beta1a)
*
* @param {object} params Parameters for request
* @param {pubsub(v1beta1a).AcknowledgeRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
acknowledge: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://pubsub.googleapis.com/v1beta1a/subscriptions/acknowledge',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* pubsub.subscriptions.get
*
* @desc Gets the configuration details of a subscription.
*
* @alias pubsub.subscriptions.get
* @memberOf! pubsub(v1beta1a)
*
* @param {object} params Parameters for request
* @param {string} params.subscription The name of the subscription to get.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://pubsub.googleapis.com/v1beta1a/subscriptions/{subscription}',
method: 'GET'
}, options),
params: params,
requiredParams: ['subscription'],
pathParams: ['subscription'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* pubsub.subscriptions.pullBatch
*
* @desc Pulls messages from the server. Returns an empty list if there are no messages available in the backlog. The system is free to return UNAVAILABLE if there are too many pull requests outstanding for the given subscription.
*
* @alias pubsub.subscriptions.pullBatch
* @memberOf! pubsub(v1beta1a)
*
* @param {object} params Parameters for request
* @param {pubsub(v1beta1a).PullBatchRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
pullBatch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://pubsub.googleapis.com/v1beta1a/subscriptions/pullBatch',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* pubsub.subscriptions.modifyPushConfig
*
* @desc Modifies the <code>PushConfig</code> for a specified subscription. This method can be used to suspend the flow of messages to an endpoint by clearing the <code>PushConfig</code> field in the request. Messages will be accumulated for delivery even if no push configuration is defined or while the configuration is modified.
*
* @alias pubsub.subscriptions.modifyPushConfig
* @memberOf! pubsub(v1beta1a)
*
* @param {object} params Parameters for request
* @param {pubsub(v1beta1a).ModifyPushConfigRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
modifyPushConfig: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://pubsub.googleapis.com/v1beta1a/subscriptions/modifyPushConfig',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* pubsub.subscriptions.pull
*
* @desc Pulls a single message from the server. If return_immediately is true, and no messages are available in the subscription, this method returns FAILED_PRECONDITION. The system is free to return an UNAVAILABLE error if no messages are available in a reasonable amount of time (to reduce system load).
*
* @alias pubsub.subscriptions.pull
* @memberOf! pubsub(v1beta1a)
*
* @param {object} params Parameters for request
* @param {pubsub(v1beta1a).PullRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
pull: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://pubsub.googleapis.com/v1beta1a/subscriptions/pull',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* pubsub.subscriptions.delete
*
* @desc Deletes an existing subscription. All pending messages in the subscription are immediately dropped. Calls to Pull after deletion will return NOT_FOUND.
*
* @alias pubsub.subscriptions.delete
* @memberOf! pubsub(v1beta1a)
*
* @param {object} params Parameters for request
* @param {string} params.subscription The subscription to delete.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://pubsub.googleapis.com/v1beta1a/subscriptions/{subscription}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['subscription'],
pathParams: ['subscription'],
context: self
};
return createAPIRequest(parameters, callback);
}
};
self.topics = {
/**
* pubsub.topics.get
*
* @desc Gets the configuration of a topic. Since the topic only has the name attribute, this method is only useful to check the existence of a topic. If other attributes are added in the future, they will be returned here.
*
* @alias pubsub.topics.get
* @memberOf! pubsub(v1beta1a)
*
* @param {object} params Parameters for request
* @param {string} params.topic The name of the topic to get.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://pubsub.googleapis.com/v1beta1a/topics/{topic}',
method: 'GET'
}, options),
params: params,
requiredParams: ['topic'],
pathParams: ['topic'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* pubsub.topics.publish
*
* @desc Adds a message to the topic. Returns NOT_FOUND if the topic does not exist.
*
* @alias pubsub.topics.publish
* @memberOf! pubsub(v1beta1a)
*
* @param {object} params Parameters for request
* @param {pubsub(v1beta1a).PublishRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
publish: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://pubsub.googleapis.com/v1beta1a/topics/publish',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* pubsub.topics.delete
*
* @desc Deletes the topic with the given name. Returns NOT_FOUND if the topic does not exist. After a topic is deleted, a new topic may be created with the same name.
*
* @alias pubsub.topics.delete
* @memberOf! pubsub(v1beta1a)
*
* @param {object} params Parameters for request
* @param {string} params.topic Name of the topic to delete.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
delete: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://pubsub.googleapis.com/v1beta1a/topics/{topic}',
method: 'DELETE'
}, options),
params: params,
requiredParams: ['topic'],
pathParams: ['topic'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* pubsub.topics.publishBatch
*
* @desc Adds one or more messages to the topic. Returns NOT_FOUND if the topic does not exist.
*
* @alias pubsub.topics.publishBatch
* @memberOf! pubsub(v1beta1a)
*
* @param {object} params Parameters for request
* @param {pubsub(v1beta1a).PublishBatchRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
publishBatch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://pubsub.googleapis.com/v1beta1a/topics/publishBatch',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* pubsub.topics.list
*
* @desc Lists matching topics.
*
* @alias pubsub.topics.list
* @memberOf! pubsub(v1beta1a)
*
* @param {object} params Parameters for request
* @param {string=} params.pageToken The value obtained in the last <code>ListTopicsResponse</code> for continuation.
* @param {string=} params.query A valid label query expression.
* @param {integer=} params.maxResults Maximum number of topics to return.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://pubsub.googleapis.com/v1beta1a/topics',
method: 'GET'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* pubsub.topics.create
*
* @desc Creates the given topic with the given name.
*
* @alias pubsub.topics.create
* @memberOf! pubsub(v1beta1a)
*
* @param {object} params Parameters for request
* @param {pubsub(v1beta1a).Topic} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
create: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://pubsub.googleapis.com/v1beta1a/topics',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
};
}
/**
* @typedef ModifyAckDeadlineRequest
* @memberOf! pubsub(v1beta1a)
* @type object
* @property {string} subscription Next Index: 5
The name of the subscription from which messages are being pulled.
* @property {string} ackId The acknowledgment ID. Either this or ack_ids must be populated,
not both.
* @property {integer} ackDeadlineSeconds The new ack deadline with respect to the time this request was sent to the
Pub/Sub system. Must be >= 0. For example, if the value is 10, the new ack
deadline will expire 10 seconds after the ModifyAckDeadline call was made.
Specifying zero may immediately make the message available for another pull
request.
* @property {string[]} ackIds List of acknowledgment IDs. Either this field or ack_id
should be populated, not both.
*/
/**
* @typedef PullBatchRequest
* @memberOf! pubsub(v1beta1a)
* @type object
* @property {string} subscription The subscription from which messages should be pulled.
* @property {boolean} returnImmediately If this is specified as true the system will respond immediately even if
it is not able to return a message in the Pull response. Otherwise the
system is allowed to wait until at least one message is available rather
than returning no messages. The client may cancel the request if it does
not wish to wait any longer for the response.
* @property {integer} maxEvents The maximum number of PubsubEvents returned for this request. The Pub/Sub
system may return fewer than the number of events specified.
*/
/**
* @typedef ModifyPushConfigRequest
* @memberOf! pubsub(v1beta1a)
* @type object
* @property {pubsub(v1beta1a).PushConfig} pushConfig An empty <code>push_config</code> indicates that the Pub/Sub system should
pause pushing messages from the given subscription.
* @property {string} subscription The name of the subscription.
*/
/**
* @typedef PubsubMessage
* @memberOf! pubsub(v1beta1a)
* @type object
* @property {string} data The message payload.
* @property {string} messageId ID of this message assigned by the server at publication time. Guaranteed
to be unique within the topic. This value may be read by a subscriber
that receives a PubsubMessage via a Pull call or a push delivery. It must
not be populated by a publisher in a Publish call.
* @property {pubsub(v1beta1a).Label[]} label Optional list of labels for this message. Keys in this collection must
be unique.
* @property {string} publishTime The time at which the message was published.
The time is milliseconds since the UNIX epoch.
*/
/**
* @typedef AcknowledgeRequest
* @memberOf! pubsub(v1beta1a)
* @type object
* @property {string} subscription The subscription whose message is being acknowledged.
* @property {string[]} ackId The acknowledgment ID for the message being acknowledged. This was
returned by the Pub/Sub system in the Pull response.
*/
/**
* @typedef PullBatchResponse
* @memberOf! pubsub(v1beta1a)
* @type object
* @property {pubsub(v1beta1a).PullResponse[]} pullResponses Received Pub/Sub messages or status events. The Pub/Sub system will return
zero messages if there are no more messages available in the backlog. The
Pub/Sub system may return fewer than the max_events requested even if
there are more messages available in the backlog.
*/
/**
* @typedef Empty
* @memberOf! pubsub(v1beta1a)
* @type object
*/
/**
* @typedef PublishBatchRequest
* @memberOf! pubsub(v1beta1a)
* @type object
* @property {string} topic The messages in the request will be published on this topic.
* @property {pubsub(v1beta1a).PubsubMessage[]} messages The messages to publish.
*/
/**
* @typedef ListTopicsResponse
* @memberOf! pubsub(v1beta1a)
* @type object
* @property {string} nextPageToken If not empty, indicates that there are more topics that match the request,
and this value should be passed to the next <code>ListTopicsRequest</code>
to continue.
* @property {pubsub(v1beta1a).Topic[]} topic The resulting topics.
*/
/**
* @typedef PullResponse
* @memberOf! pubsub(v1beta1a)
* @type object
* @property {string} ackId This ID must be used to acknowledge the received event or message.
* @property {pubsub(v1beta1a).PubsubEvent} pubsubEvent A pubsub message or truncation event.
*/
/**
* @typedef PushConfig
* @memberOf! pubsub(v1beta1a)
* @type object
* @property {string} pushEndpoint A URL locating the endpoint to which messages should be pushed.
For example, a Webhook endpoint might use "https://example.com/push".
*/
/**
* @typedef PullRequest
* @memberOf! pubsub(v1beta1a)
* @type object
* @property {string} subscription The subscription from which a message should be pulled.
* @property {boolean} returnImmediately If this is specified as true the system will respond immediately even if
it is not able to return a message in the Pull response. Otherwise the
system is allowed to wait until at least one message is available rather
than returning FAILED_PRECONDITION. The client may cancel the request if
it does not wish to wait any longer for the response.
*/
/**
* @typedef ListSubscriptionsResponse
* @memberOf! pubsub(v1beta1a)
* @type object
* @property {pubsub(v1beta1a).Subscription[]} subscription The subscriptions that match the request.
* @property {string} nextPageToken If not empty, indicates that there are more subscriptions that match the
request and this value should be passed to the next
<code>ListSubscriptionsRequest</code> to continue.
*/
/**
* @typedef PubsubEvent
* @memberOf! pubsub(v1beta1a)
* @type object
* @property {boolean} truncated Indicates that this subscription has been truncated.
* @property {boolean} deleted Indicates that this subscription has been deleted. (Note that pull
subscribers will always receive NOT_FOUND in response in their pull
request on the subscription, rather than seeing this boolean.)
* @property {pubsub(v1beta1a).PubsubMessage} message A received message.
* @property {string} subscription The subscription that received the event.
*/
/**
* @typedef PublishRequest
* @memberOf! pubsub(v1beta1a)
* @type object
* @property {string} topic The message in the request will be published on this topic.
* @property {pubsub(v1beta1a).PubsubMessage} message The message to publish.
*/
/**
* @typedef Subscription
* @memberOf! pubsub(v1beta1a)
* @type object
* @property {integer} ackDeadlineSeconds For either push or pull delivery, the value is the maximum time after a
subscriber receives a message before the subscriber should acknowledge or
Nack the message. If the Ack deadline for a message passes without an
Ack or a Nack, the Pub/Sub system will eventually redeliver the message.
If a subscriber acknowledges after the deadline, the Pub/Sub system may
accept the Ack, but it is possible that the message has been already
delivered again. Multiple Acks to the message are allowed and will
succeed.
For push delivery, this value is used to set the request timeout for
the call to the push endpoint.
For pull delivery, this value is used as the initial value for the Ack
deadline. It may be overridden for each message using its corresponding
ack_id with <code>ModifyAckDeadline</code>.
While a message is outstanding (i.e. it has been delivered to a pull
subscriber and the subscriber has not yet Acked or Nacked), the Pub/Sub
system will not deliver that message to another pull subscriber
(on a best-effort basis).
* @property {string} name Name of the subscription.
* @property {string} topic The name of the topic from which this subscription is receiving messages.
* @property {pubsub(v1beta1a).PushConfig} pushConfig If push delivery is used with this subscription, this field is
used to configure it.
*/
/**
* @typedef PublishBatchResponse
* @memberOf! pubsub(v1beta1a)
* @type object
* @property {string[]} messageIds The server-assigned ID of each published message, in the same order as
the messages in the request. IDs are guaranteed to be unique within
the topic.
*/
/**
* @typedef Topic
* @memberOf! pubsub(v1beta1a)
* @type object
* @property {string} name Name of the topic.
*/
/**
* @typedef Label
* @memberOf! pubsub(v1beta1a)
* @type object
* @property {string} strValue A string value.
* @property {string} numValue An integer value.
* @property {string} key The key of a label is a syntactically valid URL (as per RFC 1738) with
the "scheme" and initial slashes omitted and with the additional
restrictions noted below. Each key should be globally unique. The
"host" portion is called the "namespace" and is not necessarily
resolvable to a network endpoint. Instead, the namespace indicates what
system or entity defines the semantics of the label. Namespaces do not
restrict the set of objects to which a label may be associated.
Keys are defined by the following grammar:
key = hostname "/" kpath
kpath = ksegment *[ "/" ksegment ]
ksegment = alphadigit | *[ alphadigit | "-" | "_" | "." ]
where "hostname" and "alphadigit" are defined as in RFC 1738.
Example key:
spanner.google.com/universe
*/
module.exports = Pubsub;
|
| File | Statements | Branches | Functions | Lines | |||||
|---|---|---|---|---|---|---|---|---|---|
| v1explorer.js | 9.3% | (4 / 43) | 0% | (0 / 26) | 0% | (0 / 7) | 9.3% | (4 / 43) |
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* Google Spectrum Database API
*
* API for spectrum-management functions.
*
* @example
* var google = require('googleapis');
* var spectrum = google.spectrum('v1explorer');
*
* @namespace spectrum
* @type {Function}
* @version v1explorer
* @variation v1explorer
* @param {object=} options Options for Spectrum
*/
function Spectrum(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.paws = {
/**
* spectrum.paws.getSpectrum
*
* @desc Requests information about the available spectrum for a device at a location. Requests from a fixed-mode device must include owner information so the device can be registered with the database.
*
* @alias spectrum.paws.getSpectrum
* @memberOf! spectrum(v1explorer)
*
* @param {object} params Parameters for request
* @param {spectrum(v1explorer).PawsGetSpectrumRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
getSpectrum: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/spectrum/v1explorer/paws/getSpectrum',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* spectrum.paws.getSpectrumBatch
*
* @desc The Google Spectrum Database does not support batch requests, so this method always yields an UNIMPLEMENTED error.
*
* @alias spectrum.paws.getSpectrumBatch
* @memberOf! spectrum(v1explorer)
*
* @param {object} params Parameters for request
* @param {spectrum(v1explorer).PawsGetSpectrumBatchRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
getSpectrumBatch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/spectrum/v1explorer/paws/getSpectrumBatch',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* spectrum.paws.init
*
* @desc Initializes the connection between a white space device and the database.
*
* @alias spectrum.paws.init
* @memberOf! spectrum(v1explorer)
*
* @param {object} params Parameters for request
* @param {spectrum(v1explorer).PawsInitRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
init: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/spectrum/v1explorer/paws/init',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* spectrum.paws.notifySpectrumUse
*
* @desc Notifies the database that the device has selected certain frequency ranges for transmission. Only to be invoked when required by the regulator. The Google Spectrum Database does not operate in domains that require notification, so this always yields an UNIMPLEMENTED error.
*
* @alias spectrum.paws.notifySpectrumUse
* @memberOf! spectrum(v1explorer)
*
* @param {object} params Parameters for request
* @param {spectrum(v1explorer).PawsNotifySpectrumUseRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
notifySpectrumUse: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/spectrum/v1explorer/paws/notifySpectrumUse',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* spectrum.paws.register
*
* @desc The Google Spectrum Database implements registration in the getSpectrum method. As such this always returns an UNIMPLEMENTED error.
*
* @alias spectrum.paws.register
* @memberOf! spectrum(v1explorer)
*
* @param {object} params Parameters for request
* @param {spectrum(v1explorer).PawsRegisterRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
register: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/spectrum/v1explorer/paws/register',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* spectrum.paws.verifyDevice
*
* @desc Validates a device for white space use in accordance with regulatory rules. The Google Spectrum Database does not support master/slave configurations, so this always yields an UNIMPLEMENTED error.
*
* @alias spectrum.paws.verifyDevice
* @memberOf! spectrum(v1explorer)
*
* @param {object} params Parameters for request
* @param {spectrum(v1explorer).PawsVerifyDeviceRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
verifyDevice: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/spectrum/v1explorer/paws/verifyDevice',
method: 'POST'
}, options),
params: params,
requiredParams: [],
pathParams: [],
context: self
};
return createAPIRequest(parameters, callback);
}
};
}
/**
* @typedef AntennaCharacteristics
* @memberOf! spectrum(v1explorer)
* @type object
* @property {number} height The antenna height in meters. Whether the antenna height is required depends on the device type and the regulatory domain. Note that the height may be negative.
* @property {string} heightType If the height is required, then the height type (AGL for above ground level or AMSL for above mean sea level) is also required. The default is AGL.
* @property {number} heightUncertainty The height uncertainty in meters. Whether this is required depends on the regulatory domain.
*/
/**
* @typedef DatabaseSpec
* @memberOf! spectrum(v1explorer)
* @type object
* @property {string} name The display name for a database.
* @property {string} uri The corresponding URI of the database.
*/
/**
* @typedef DbUpdateSpec
* @memberOf! spectrum(v1explorer)
* @type object
* @property {spectrum(v1explorer).DatabaseSpec[]} databases A required list of one or more databases. A device should update its preconfigured list of databases to replace (only) the database that provided the response with the specified entries.
*/
/**
* @typedef DeviceCapabilities
* @memberOf! spectrum(v1explorer)
* @type object
* @property {spectrum(v1explorer).FrequencyRange[]} frequencyRanges An optional list of frequency ranges supported by the device. Each element must contain start and stop frequencies in which the device can operate. Channel identifiers are optional. When specified, the database should not return available spectrum that falls outside these ranges or channel IDs.
*/
/**
* @typedef DeviceDescriptor
* @memberOf! spectrum(v1explorer)
* @type object
* @property {string} etsiEnDeviceCategory Specifies the ETSI white space device category. Valid values are the strings master and slave. This field is case-insensitive. Consult the ETSI documentation for details about the device types.
* @property {string} etsiEnDeviceEmissionsClass Specifies the ETSI white space device emissions class. The values are represented by numeric strings, such as 1, 2, etc. Consult the ETSI documentation for details about the device types.
* @property {string} etsiEnDeviceType Specifies the ETSI white space device type. Valid values are single-letter strings, such as A, B, etc. Consult the ETSI documentation for details about the device types.
* @property {string} etsiEnTechnologyId Specifies the ETSI white space device technology identifier. The string value must not exceed 64 characters in length. Consult the ETSI documentation for details about the device types.
* @property {string} fccId Specifies the device's FCC certification identifier. The value is an identifier string whose length should not exceed 32 characters. Note that, in practice, a valid FCC ID may be limited to 19 characters.
* @property {string} fccTvbdDeviceType Specifies the TV Band White Space device type, as defined by the FCC. Valid values are FIXED, MODE_1, MODE_2.
* @property {string} manufacturerId The manufacturer's ID may be required by the regulatory domain. This should represent the name of the device manufacturer, should be consistent across all devices from the same manufacturer, and should be distinct from that of other manufacturers. The string value must not exceed 64 characters in length.
* @property {string} modelId The device's model ID may be required by the regulatory domain. The string value must not exceed 64 characters in length.
* @property {string[]} rulesetIds The list of identifiers for rulesets supported by the device. A database may require that the device provide this list before servicing the device requests. If the database does not support any of the rulesets specified in the list, the database may refuse to service the device requests. If present, the list must contain at least one entry.
For information about the valid requests, see section 9.2 of the PAWS specification. Currently, FccTvBandWhiteSpace-2010 is the only supported ruleset.
* @property {string} serialNumber The manufacturer's device serial number; required by the applicable regulatory domain. The length of the value must not exceed 64 characters.
*/
/**
* @typedef DeviceOwner
* @memberOf! spectrum(v1explorer)
* @type object
* @property {spectrum(v1explorer).Vcard} operator The vCard contact information for the device operator is optional, but may be required by specific regulatory domains.
* @property {spectrum(v1explorer).Vcard} owner The vCard contact information for the individual or business that owns the device is required.
*/
/**
* @typedef DeviceValidity
* @memberOf! spectrum(v1explorer)
* @type object
* @property {spectrum(v1explorer).DeviceDescriptor} deviceDesc The descriptor of the device for which the validity check was requested. It will always be present.
* @property {boolean} isValid The validity status: true if the device is valid for operation, false otherwise. It will always be present.
* @property {string} reason If the device identifier is not valid, the database may include a reason. The reason may be in any language. The length of the value should not exceed 128 characters.
*/
/**
* @typedef EventTime
* @memberOf! spectrum(v1explorer)
* @type object
* @property {string} startTime The inclusive start of the event. It will be present.
* @property {string} stopTime The exclusive end of the event. It will be present.
*/
/**
* @typedef FrequencyRange
* @memberOf! spectrum(v1explorer)
* @type object
* @property {string} channelId The database may include a channel identifier, when applicable. When it is included, the device should treat it as informative. The length of the identifier should not exceed 16 characters.
* @property {number} maxPowerDBm The maximum total power level (EIRP)—computed over the corresponding operating bandwidth—that is permitted within the frequency range. Depending on the context in which the frequency-range element appears, this value may be required. For example, it is required in the available-spectrum response, available-spectrum-batch response, and spectrum-use notification message, but it should not be present (it is not applicable) when the frequency range appears inside a device-capabilities message.
* @property {number} startHz The required inclusive start of the frequency range (in Hertz).
* @property {number} stopHz The required exclusive end of the frequency range (in Hertz).
*/
/**
* @typedef GeoLocation
* @memberOf! spectrum(v1explorer)
* @type object
* @property {integer} confidence The location confidence level, as an integer percentage, may be required, depending on the regulatory domain. When the parameter is optional and not provided, its value is assumed to be 95. Valid values range from 0 to 99, since, in practice, 100-percent confidence is not achievable. The confidence value is meaningful only when geolocation refers to a point with uncertainty.
* @property {spectrum(v1explorer).GeoLocationEllipse} point If present, indicates that the geolocation represents a point. Paradoxically, a point is parameterized using an ellipse, where the center represents the location of the point and the distances along the major and minor axes represent the uncertainty. The uncertainty values may be required, depending on the regulatory domain.
* @property {spectrum(v1explorer).GeoLocationPolygon} region If present, indicates that the geolocation represents a region. Database support for regions is optional.
*/
/**
* @typedef GeoLocationEllipse
* @memberOf! spectrum(v1explorer)
* @type object
* @property {spectrum(v1explorer).GeoLocationPoint} center A required geo-spatial point representing the center of the ellipse.
* @property {number} orientation A floating-point number that expresses the orientation of the ellipse, representing the rotation, in degrees, of the semi-major axis from North towards the East. For example, when the uncertainty is greatest along the North-South direction, orientation is 0 degrees; conversely, if the uncertainty is greatest along the East-West direction, orientation is 90 degrees. When orientation is not present, the orientation is assumed to be 0.
* @property {number} semiMajorAxis A floating-point number that expresses the location uncertainty along the major axis of the ellipse. May be required by the regulatory domain. When the uncertainty is optional, the default value is 0.
* @property {number} semiMinorAxis A floating-point number that expresses the location uncertainty along the minor axis of the ellipse. May be required by the regulatory domain. When the uncertainty is optional, the default value is 0.
*/
/**
* @typedef GeoLocationPoint
* @memberOf! spectrum(v1explorer)
* @type object
* @property {number} latitude A required floating-point number that expresses the latitude in degrees using the WGS84 datum. For details on this encoding, see the National Imagery and Mapping Agency's Technical Report TR8350.2.
* @property {number} longitude A required floating-point number that expresses the longitude in degrees using the WGS84 datum. For details on this encoding, see the National Imagery and Mapping Agency's Technical Report TR8350.2.
*/
/**
* @typedef GeoLocationPolygon
* @memberOf! spectrum(v1explorer)
* @type object
* @property {spectrum(v1explorer).GeoLocationPoint[]} exterior When the geolocation describes a region, the exterior field refers to a list of latitude/longitude points that represent the vertices of a polygon. The first and last points must be the same. Thus, a minimum of four points is required. The following polygon restrictions from RFC5491 apply:
- A connecting line shall not cross another connecting line of the same polygon.
- The vertices must be defined in a counterclockwise order.
- The edges of a polygon are defined by the shortest path between two points in space (not a geodesic curve). Consequently, the length between two adjacent vertices should be restricted to a maximum of 130 km.
- All vertices are assumed to be at the same altitude.
- Polygon shapes should be restricted to a maximum of 15 vertices (16 points that include the repeated vertex).
*/
/**
* @typedef GeoSpectrumSchedule
* @memberOf! spectrum(v1explorer)
* @type object
* @property {spectrum(v1explorer).GeoLocation} location The geolocation identifies the location at which the spectrum schedule applies. It will always be present.
* @property {spectrum(v1explorer).SpectrumSchedule[]} spectrumSchedules A list of available spectrum profiles and associated times. It will always be present, and at least one schedule must be included (though it may be empty if there is no available spectrum). More than one schedule may be included to represent future changes to the available spectrum.
*/
/**
* @typedef PawsGetSpectrumBatchRequest
* @memberOf! spectrum(v1explorer)
* @type object
* @property {spectrum(v1explorer).AntennaCharacteristics} antenna Depending on device type and regulatory domain, antenna characteristics may be required.
* @property {spectrum(v1explorer).DeviceCapabilities} capabilities The master device may include its device capabilities to limit the available-spectrum batch response to the spectrum that is compatible with its capabilities. The database should not return spectrum that is incompatible with the specified capabilities.
* @property {spectrum(v1explorer).DeviceDescriptor} deviceDesc When the available spectrum request is made on behalf of a specific device (a master or slave device), device descriptor information for the device on whose behalf the request is made is required (in such cases, the requestType parameter must be empty). When a requestType value is specified, device descriptor information may be optional or required according to the rules of the applicable regulatory domain.
* @property {spectrum(v1explorer).GeoLocation[]} locations A geolocation list is required. This allows a device to specify its current location plus additional anticipated locations when allowed by the regulatory domain. At least one location must be included. Geolocation must be given as the location of the radiation center of the device's antenna. If a location specifies a region, rather than a point, the database may return an UNIMPLEMENTED error if it does not support query by region.
There is no upper limit on the number of locations included in a available spectrum batch request, but the database may restrict the number of locations it supports by returning a response with fewer locations than specified in the batch request. Note that geolocations must be those of the master device (a device with geolocation capability that makes an available spectrum batch request), whether the master device is making the request on its own behalf or on behalf of a slave device (one without geolocation capability).
* @property {spectrum(v1explorer).DeviceDescriptor} masterDeviceDesc When an available spectrum batch request is made by the master device (a device with geolocation capability) on behalf of a slave device (a device without geolocation capability), the rules of the applicable regulatory domain may require the master device to provide its own device descriptor information (in addition to device descriptor information for the slave device in a separate parameter).
* @property {spectrum(v1explorer).DeviceOwner} owner Depending on device type and regulatory domain, device owner information may be included in an available spectrum batch request. This allows the device to register and get spectrum-availability information in a single request.
* @property {string} requestType The request type parameter is an optional parameter that can be used to modify an available spectrum batch request, but its use depends on applicable regulatory rules. For example, It may be used to request generic slave device parameters without having to specify the device descriptor for a specific device. When the requestType parameter is missing, the request is for a specific device (master or slave), and the device descriptor parameter for the device on whose behalf the batch request is made is required.
* @property {string} type The message type (e.g., INIT_REQ, AVAIL_SPECTRUM_REQ, ...).
Required field.
* @property {string} version The PAWS version. Must be exactly 1.0.
Required field.
*/
/**
* @typedef PawsGetSpectrumBatchResponse
* @memberOf! spectrum(v1explorer)
* @type object
* @property {spectrum(v1explorer).DbUpdateSpec} databaseChange A database may include the databaseChange parameter to notify a device of a change to its database URI, providing one or more alternate database URIs. The device should use this information to update its list of pre-configured databases by (only) replacing its entry for the responding database with the list of alternate URIs.
* @property {spectrum(v1explorer).DeviceDescriptor} deviceDesc The database must return in its available spectrum response the device descriptor information it received in the master device's available spectrum batch request.
* @property {spectrum(v1explorer).GeoSpectrumSchedule[]} geoSpectrumSchedules The available spectrum batch response must contain a geo-spectrum schedule list, The list may be empty if spectrum is not available. The database may return more than one geo-spectrum schedule to represent future changes to the available spectrum. How far in advance a schedule may be provided depends upon the applicable regulatory domain. The database may return available spectrum for fewer geolocations than requested. The device must not make assumptions about the order of the entries in the list, and must use the geolocation value in each geo-spectrum schedule entry to match available spectrum to a location.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "spectrum#pawsGetSpectrumBatchResponse".
* @property {number} maxContiguousBwHz The database may return a constraint on the allowed maximum contiguous bandwidth (in Hertz). A regulatory domain may require the database to return this parameter. When this parameter is present in the response, the device must apply this constraint to its spectrum-selection logic to ensure that no single block of spectrum has bandwidth that exceeds this value.
* @property {number} maxTotalBwHz The database may return a constraint on the allowed maximum total bandwidth (in Hertz), which does not need to be contiguous. A regulatory domain may require the database to return this parameter. When this parameter is present in the available spectrum batch response, the device must apply this constraint to its spectrum-selection logic to ensure that total bandwidth does not exceed this value.
* @property {boolean} needsSpectrumReport For regulatory domains that require a spectrum-usage report from devices, the database must return true for this parameter if the geo-spectrum schedules list is not empty; otherwise, the database should either return false or omit this parameter. If this parameter is present and its value is true, the device must send a spectrum use notify message to the database; otherwise, the device should not send the notification.
* @property {spectrum(v1explorer).RulesetInfo} rulesetInfo The database should return ruleset information, which identifies the applicable regulatory authority and ruleset for the available spectrum batch response. If included, the device must use the corresponding ruleset to interpret the response. Values provided in the returned ruleset information, such as maxLocationChange, take precedence over any conflicting values provided in the ruleset information returned in a prior initialization response sent by the database to the device.
* @property {string} timestamp The database includes a timestamp of the form, YYYY-MM-DDThh:mm:ssZ (Internet timestamp format per RFC3339), in its available spectrum batch response. The timestamp should be used by the device as a reference for the start and stop times specified in the response spectrum schedules.
* @property {string} type The message type (e.g., INIT_REQ, AVAIL_SPECTRUM_REQ, ...).
Required field.
* @property {string} version The PAWS version. Must be exactly 1.0.
Required field.
*/
/**
* @typedef PawsGetSpectrumRequest
* @memberOf! spectrum(v1explorer)
* @type object
* @property {spectrum(v1explorer).AntennaCharacteristics} antenna Depending on device type and regulatory domain, the characteristics of the antenna may be required.
* @property {spectrum(v1explorer).DeviceCapabilities} capabilities The master device may include its device capabilities to limit the available-spectrum response to the spectrum that is compatible with its capabilities. The database should not return spectrum that is incompatible with the specified capabilities.
* @property {spectrum(v1explorer).DeviceDescriptor} deviceDesc When the available spectrum request is made on behalf of a specific device (a master or slave device), device descriptor information for that device is required (in such cases, the requestType parameter must be empty). When a requestType value is specified, device descriptor information may be optional or required according to the rules of the applicable regulatory domain.
* @property {spectrum(v1explorer).GeoLocation} location The geolocation of the master device (a device with geolocation capability that makes an available spectrum request) is required whether the master device is making the request on its own behalf or on behalf of a slave device (one without geolocation capability). The location must be the location of the radiation center of the master device's antenna. To support mobile devices, a regulatory domain may allow the anticipated position of the master device to be given instead. If the location specifies a region, rather than a point, the database may return an UNIMPLEMENTED error code if it does not support query by region.
* @property {spectrum(v1explorer).DeviceDescriptor} masterDeviceDesc When an available spectrum request is made by the master device (a device with geolocation capability) on behalf of a slave device (a device without geolocation capability), the rules of the applicable regulatory domain may require the master device to provide its own device descriptor information (in addition to device descriptor information for the slave device, which is provided in a separate parameter).
* @property {spectrum(v1explorer).DeviceOwner} owner Depending on device type and regulatory domain, device owner information may be included in an available spectrum request. This allows the device to register and get spectrum-availability information in a single request.
* @property {string} requestType The request type parameter is an optional parameter that can be used to modify an available spectrum request, but its use depends on applicable regulatory rules. It may be used, for example, to request generic slave device parameters without having to specify the device descriptor for a specific device. When the requestType parameter is missing, the request is for a specific device (master or slave), and the deviceDesc parameter for the device on whose behalf the request is made is required.
* @property {string} type The message type (e.g., INIT_REQ, AVAIL_SPECTRUM_REQ, ...).
Required field.
* @property {string} version The PAWS version. Must be exactly 1.0.
Required field.
*/
/**
* @typedef PawsGetSpectrumResponse
* @memberOf! spectrum(v1explorer)
* @type object
* @property {spectrum(v1explorer).DbUpdateSpec} databaseChange A database may include the databaseChange parameter to notify a device of a change to its database URI, providing one or more alternate database URIs. The device should use this information to update its list of pre-configured databases by (only) replacing its entry for the responding database with the list of alternate URIs.
* @property {spectrum(v1explorer).DeviceDescriptor} deviceDesc The database must return, in its available spectrum response, the device descriptor information it received in the master device's available spectrum request.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "spectrum#pawsGetSpectrumResponse".
* @property {number} maxContiguousBwHz The database may return a constraint on the allowed maximum contiguous bandwidth (in Hertz). A regulatory domain may require the database to return this parameter. When this parameter is present in the response, the device must apply this constraint to its spectrum-selection logic to ensure that no single block of spectrum has bandwidth that exceeds this value.
* @property {number} maxTotalBwHz The database may return a constraint on the allowed maximum total bandwidth (in Hertz), which need not be contiguous. A regulatory domain may require the database to return this parameter. When this parameter is present in the available spectrum response, the device must apply this constraint to its spectrum-selection logic to ensure that total bandwidth does not exceed this value.
* @property {boolean} needsSpectrumReport For regulatory domains that require a spectrum-usage report from devices, the database must return true for this parameter if the spectrum schedule list is not empty; otherwise, the database will either return false or omit this parameter. If this parameter is present and its value is true, the device must send a spectrum use notify message to the database; otherwise, the device must not send the notification.
* @property {spectrum(v1explorer).RulesetInfo} rulesetInfo The database should return ruleset information, which identifies the applicable regulatory authority and ruleset for the available spectrum response. If included, the device must use the corresponding ruleset to interpret the response. Values provided in the returned ruleset information, such as maxLocationChange, take precedence over any conflicting values provided in the ruleset information returned in a prior initialization response sent by the database to the device.
* @property {spectrum(v1explorer).SpectrumSchedule[]} spectrumSchedules The available spectrum response must contain a spectrum schedule list. The list may be empty if spectrum is not available. The database may return more than one spectrum schedule to represent future changes to the available spectrum. How far in advance a schedule may be provided depends on the applicable regulatory domain.
* @property {string} timestamp The database includes a timestamp of the form YYYY-MM-DDThh:mm:ssZ (Internet timestamp format per RFC3339) in its available spectrum response. The timestamp should be used by the device as a reference for the start and stop times specified in the response spectrum schedules.
* @property {string} type The message type (e.g., INIT_REQ, AVAIL_SPECTRUM_REQ, ...).
Required field.
* @property {string} version The PAWS version. Must be exactly 1.0.
Required field.
*/
/**
* @typedef PawsInitRequest
* @memberOf! spectrum(v1explorer)
* @type object
* @property {spectrum(v1explorer).DeviceDescriptor} deviceDesc The DeviceDescriptor parameter is required. If the database does not support the device or any of the rulesets specified in the device descriptor, it must return an UNSUPPORTED error code in the error response.
* @property {spectrum(v1explorer).GeoLocation} location A device's geolocation is required.
* @property {string} type The message type (e.g., INIT_REQ, AVAIL_SPECTRUM_REQ, ...).
Required field.
* @property {string} version The PAWS version. Must be exactly 1.0.
Required field.
*/
/**
* @typedef PawsInitResponse
* @memberOf! spectrum(v1explorer)
* @type object
* @property {spectrum(v1explorer).DbUpdateSpec} databaseChange A database may include the databaseChange parameter to notify a device of a change to its database URI, providing one or more alternate database URIs. The device should use this information to update its list of pre-configured databases by (only) replacing its entry for the responding database with the list of alternate URIs.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "spectrum#pawsInitResponse".
* @property {spectrum(v1explorer).RulesetInfo} rulesetInfo The rulesetInfo parameter must be included in the response. This parameter specifies the regulatory domain and parameters applicable to that domain. The database must include the authority field, which defines the regulatory domain for the location specified in the INIT_REQ message.
* @property {string} type The message type (e.g., INIT_REQ, AVAIL_SPECTRUM_REQ, ...).
Required field.
* @property {string} version The PAWS version. Must be exactly 1.0.
Required field.
*/
/**
* @typedef PawsNotifySpectrumUseRequest
* @memberOf! spectrum(v1explorer)
* @type object
* @property {spectrum(v1explorer).DeviceDescriptor} deviceDesc Device descriptor information is required in the spectrum-use notification message.
* @property {spectrum(v1explorer).GeoLocation} location The geolocation of the master device (the device that is sending the spectrum-use notification) to the database is required in the spectrum-use notification message.
* @property {spectrum(v1explorer).SpectrumMessage[]} spectra A spectrum list is required in the spectrum-use notification. The list specifies the spectrum that the device expects to use, which includes frequency ranges and maximum power levels. The list may be empty if the device decides not to use any of spectrum. For consistency, the psdBandwidthHz value should match that from one of the spectrum elements in the corresponding available spectrum response previously sent to the device by the database. Note that maximum power levels in the spectrum element must be expressed as power spectral density over the specified psdBandwidthHz value. The actual bandwidth to be used (as computed from the start and stop frequencies) may be different from the psdBandwidthHz value. As an example, when regulatory rules express maximum power spectral density in terms of maximum power over any 100 kHz band, then the psdBandwidthHz value should be set to 100 kHz, even though the actual bandwidth used can be 20 kHz.
* @property {string} type The message type (e.g., INIT_REQ, AVAIL_SPECTRUM_REQ, ...).
Required field.
* @property {string} version The PAWS version. Must be exactly 1.0.
Required field.
*/
/**
* @typedef PawsNotifySpectrumUseResponse
* @memberOf! spectrum(v1explorer)
* @type object
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "spectrum#pawsNotifySpectrumUseResponse".
* @property {string} type The message type (e.g., INIT_REQ, AVAIL_SPECTRUM_REQ, ...).
Required field.
* @property {string} version The PAWS version. Must be exactly 1.0.
Required field.
*/
/**
* @typedef PawsRegisterRequest
* @memberOf! spectrum(v1explorer)
* @type object
* @property {spectrum(v1explorer).AntennaCharacteristics} antenna Antenna characteristics, including its height and height type.
* @property {spectrum(v1explorer).DeviceDescriptor} deviceDesc A DeviceDescriptor is required.
* @property {spectrum(v1explorer).DeviceOwner} deviceOwner Device owner information is required.
* @property {spectrum(v1explorer).GeoLocation} location A device's geolocation is required.
* @property {string} type The message type (e.g., INIT_REQ, AVAIL_SPECTRUM_REQ, ...).
Required field.
* @property {string} version The PAWS version. Must be exactly 1.0.
Required field.
*/
/**
* @typedef PawsRegisterResponse
* @memberOf! spectrum(v1explorer)
* @type object
* @property {spectrum(v1explorer).DbUpdateSpec} databaseChange A database may include the databaseChange parameter to notify a device of a change to its database URI, providing one or more alternate database URIs. The device should use this information to update its list of pre-configured databases by (only) replacing its entry for the responding database with the list of alternate URIs.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "spectrum#pawsRegisterResponse".
* @property {string} type The message type (e.g., INIT_REQ, AVAIL_SPECTRUM_REQ, ...).
Required field.
* @property {string} version The PAWS version. Must be exactly 1.0.
Required field.
*/
/**
* @typedef PawsVerifyDeviceRequest
* @memberOf! spectrum(v1explorer)
* @type object
* @property {spectrum(v1explorer).DeviceDescriptor[]} deviceDescs A list of device descriptors, which specifies the slave devices to be validated, is required.
* @property {string} type The message type (e.g., INIT_REQ, AVAIL_SPECTRUM_REQ, ...).
Required field.
* @property {string} version The PAWS version. Must be exactly 1.0.
Required field.
*/
/**
* @typedef PawsVerifyDeviceResponse
* @memberOf! spectrum(v1explorer)
* @type object
* @property {spectrum(v1explorer).DbUpdateSpec} databaseChange A database may include the databaseChange parameter to notify a device of a change to its database URI, providing one or more alternate database URIs. The device should use this information to update its list of pre-configured databases by (only) replacing its entry for the responding database with the list of alternate URIs.
* @property {spectrum(v1explorer).DeviceValidity[]} deviceValidities A device validities list is required in the device validation response to report whether each slave device listed in a previous device validation request is valid. The number of entries must match the number of device descriptors listed in the previous device validation request.
* @property {string} kind Identifies what kind of resource this is. Value: the fixed string "spectrum#pawsVerifyDeviceResponse".
* @property {string} type The message type (e.g., INIT_REQ, AVAIL_SPECTRUM_REQ, ...).
Required field.
* @property {string} version The PAWS version. Must be exactly 1.0.
Required field.
*/
/**
* @typedef RulesetInfo
* @memberOf! spectrum(v1explorer)
* @type object
* @property {string} authority The regulatory domain to which the ruleset belongs is required. It must be a 2-letter country code. The device should use this to determine additional device behavior required by the associated regulatory domain.
* @property {number} maxLocationChange The maximum location change in meters is required in the initialization response, but optional otherwise. When the device changes location by more than this specified distance, it must contact the database to get the available spectrum for the new location. If the device is using spectrum that is no longer available, it must immediately cease use of the spectrum under rules for database-managed spectrum. If this value is provided within the context of an available-spectrum response, it takes precedence over the value within the initialization response.
* @property {integer} maxPollingSecs The maximum duration, in seconds, between requests for available spectrum. It is required in the initialization response, but optional otherwise. The device must contact the database to get available spectrum no less frequently than this duration. If the new spectrum information indicates that the device is using spectrum that is no longer available, it must immediately cease use of those frequencies under rules for database-managed spectrum. If this value is provided within the context of an available-spectrum response, it takes precedence over the value within the initialization response.
* @property {string[]} rulesetIds The identifiers of the rulesets supported for the device's location. The database should include at least one applicable ruleset in the initialization response. The device may use the ruleset identifiers to determine parameters to include in subsequent requests. Within the context of the available-spectrum responses, the database should include the identifier of the ruleset that it used to determine the available-spectrum response. If included, the device must use the specified ruleset to interpret the response. If the device does not support the indicated ruleset, it must not operate in the spectrum governed by the ruleset.
*/
/**
* @typedef SpectrumMessage
* @memberOf! spectrum(v1explorer)
* @type object
* @property {number} bandwidth The bandwidth (in Hertz) for which permissible power levels are specified. For example, FCC regulation would require only one spectrum specification at 6MHz bandwidth, but Ofcom regulation would require two specifications, at 0.1MHz and 8MHz. This parameter may be empty if there is no available spectrum. It will be present otherwise.
* @property {spectrum(v1explorer).FrequencyRange[]} frequencyRanges The list of frequency ranges and permissible power levels. The list may be empty if there is no available spectrum, otherwise it will be present.
*/
/**
* @typedef SpectrumSchedule
* @memberOf! spectrum(v1explorer)
* @type object
* @property {spectrum(v1explorer).EventTime} eventTime The event time expresses when the spectrum profile is valid. It will always be present.
* @property {spectrum(v1explorer).SpectrumMessage[]} spectra A list of spectrum messages representing the usable profile. It will always be present, but may be empty when there is no available spectrum.
*/
/**
* @typedef Vcard
* @memberOf! spectrum(v1explorer)
* @type object
* @property {spectrum(v1explorer).VcardAddress} adr The street address of the entity.
* @property {spectrum(v1explorer).VcardTypedText} email An email address that can be used to reach the contact.
* @property {string} fn The full name of the contact person. For example: John A. Smith.
* @property {spectrum(v1explorer).VcardTypedText} org The organization associated with the registering entity.
* @property {spectrum(v1explorer).VcardTelephone} tel A telephone number that can be used to call the contact.
*/
/**
* @typedef VcardAddress
* @memberOf! spectrum(v1explorer)
* @type object
* @property {string} code The postal code associated with the address. For example: 94423.
* @property {string} country The country name. For example: US.
* @property {string} locality The city or local equivalent portion of the address. For example: San Jose.
* @property {string} pobox An optional post office box number.
* @property {string} region The state or local equivalent portion of the address. For example: CA.
* @property {string} street The street number and name. For example: 123 Any St.
*/
/**
* @typedef VcardTelephone
* @memberOf! spectrum(v1explorer)
* @type object
* @property {string} uri A nested telephone URI of the form: tel:+1-123-456-7890.
*/
/**
* @typedef VcardTypedText
* @memberOf! spectrum(v1explorer)
* @type object
* @property {string} text The text string associated with this item. For example, for an org field: ACME, inc. For an email field: smith@example.com.
*/
module.exports = Spectrum;
|
| File | Statements | Branches | Functions | Lines | |||||
|---|---|---|---|---|---|---|---|---|---|
| v1beta3firstparty.js | 2.88% | (4 / 139) | 0% | (0 / 90) | 0% | (0 / 23) | 2.88% | (4 / 139) |
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 | 1 1 1 1 | /**
* Copyright 2015 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* jshint maxlen: false */
'use strict';
var createAPIRequest = require('../../lib/apirequest');
var utils = require('../../lib/utils');
/**
* Cloud Tool Results firstparty API
*
* Reads and publishes results from Firebase Test Lab.
*
* @example
* var google = require('googleapis');
* var toolresults = google.toolresults('v1beta3firstparty');
*
* @namespace toolresults
* @type {Function}
* @version v1beta3firstparty
* @variation v1beta3firstparty
* @param {object=} options Options for Toolresults
*/
function Toolresults(options) { // eslint-disable-line
var self = this;
self._options = options || {};
self.projects = {
/**
* toolresults.projects.getSettings
*
* @desc Gets the Tool Results settings for a project. May return any of the following canonical error codes: - PERMISSION_DENIED - if the user is not authorized to read from project
*
* @alias toolresults.projects.getSettings
* @memberOf! toolresults(v1beta3firstparty)
*
* @param {object} params Parameters for request
* @param {string} params.projectId A Project id. Required.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
getSettings: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/toolresults/v1beta3firstparty/projects/{projectId}/settings',
method: 'GET'
}, options),
params: params,
requiredParams: ['projectId'],
pathParams: ['projectId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* toolresults.projects.initializeSettings
*
* @desc Creates resources for settings which have not yet been set. Currently, this creates a single resource: a Google Cloud Storage bucket, to be used as the default bucket for this project. The bucket is created in the name of the user calling. Except in rare cases, calling this method in parallel from multiple clients will only create a single bucket. In order to avoid unnecessary storage charges, the bucket is configured to automatically delete objects older than 90 days. The bucket is created with the project-private ACL: All project team members are given permissions to the bucket and objects created within it according to their roles. Project owners have owners rights, and so on. The default ACL on objects created in the bucket is project-private as well. See Google Cloud Storage documentation for more details. If there is already a default bucket set and the project can access the bucket, this call does nothing. However, if the project doesn't have the permission to access the bucket or the bucket is deteleted, a new bucket will be created. May return any canonical error codes, including the following: - PERMISSION_DENIED - if the user is not authorized to write to project - Any error code raised by Google Cloud Storage
*
* @alias toolresults.projects.initializeSettings
* @memberOf! toolresults(v1beta3firstparty)
*
* @param {object} params Parameters for request
* @param {string} params.projectId A Project id. Required.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
initializeSettings: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/toolresults/v1beta3firstparty/projects/{projectId}:initializeSettings',
method: 'POST'
}, options),
params: params,
requiredParams: ['projectId'],
pathParams: ['projectId'],
context: self
};
return createAPIRequest(parameters, callback);
},
histories: {
/**
* toolresults.projects.histories.create
*
* @desc Creates a History. The returned History will have the id set. May return any of the following canonical error codes: - PERMISSION_DENIED - if the user is not authorized to write to project - INVALID_ARGUMENT - if the request is malformed - NOT_FOUND - if the containing project does not exist
*
* @alias toolresults.projects.histories.create
* @memberOf! toolresults(v1beta3firstparty)
*
* @param {object} params Parameters for request
* @param {string} params.projectId A Project id. Required.
* @param {string=} params.requestId A unique request ID for server to detect duplicated requests. For example, a UUID. Optional, but strongly recommended.
* @param {toolresults(v1beta3firstparty).History} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
create: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/toolresults/v1beta3firstparty/projects/{projectId}/histories',
method: 'POST'
}, options),
params: params,
requiredParams: ['projectId'],
pathParams: ['projectId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* toolresults.projects.histories.get
*
* @desc Gets a History. May return any of the following canonical error codes: - PERMISSION_DENIED - if the user is not authorized to read project - INVALID_ARGUMENT - if the request is malformed - NOT_FOUND - if the History does not exist
*
* @alias toolresults.projects.histories.get
* @memberOf! toolresults(v1beta3firstparty)
*
* @param {object} params Parameters for request
* @param {string} params.historyId A History id. Required.
* @param {string} params.projectId A Project id. Required.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/toolresults/v1beta3firstparty/projects/{projectId}/histories/{historyId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['projectId', 'historyId'],
pathParams: ['historyId', 'projectId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* toolresults.projects.histories.list
*
* @desc Lists Histories for a given Project. The histories are sorted by modification time in descending order. The history_id key will be used to order the history with the same modification time. May return any of the following canonical error codes: - PERMISSION_DENIED - if the user is not authorized to read project - INVALID_ARGUMENT - if the request is malformed - NOT_FOUND - if the History does not exist
*
* @alias toolresults.projects.histories.list
* @memberOf! toolresults(v1beta3firstparty)
*
* @param {object} params Parameters for request
* @param {string=} params.filterByName If set, only return histories with the given name. Optional.
* @param {integer=} params.pageSize The maximum number of Histories to fetch. Default value: 20. The server will use this default if the field is not set or has a value of 0. Any value greater than 100 will be treated as 100. Optional.
* @param {string=} params.pageToken A continuation token to resume the query at the next item. Optional.
* @param {string} params.projectId A Project id. Required.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/toolresults/v1beta3firstparty/projects/{projectId}/histories',
method: 'GET'
}, options),
params: params,
requiredParams: ['projectId'],
pathParams: ['projectId'],
context: self
};
return createAPIRequest(parameters, callback);
},
executions: {
/**
* toolresults.projects.histories.executions.create
*
* @desc Creates an Execution. The returned Execution will have the id set. May return any of the following canonical error codes: - PERMISSION_DENIED - if the user is not authorized to write to project - INVALID_ARGUMENT - if the request is malformed - NOT_FOUND - if the containing History does not exist
*
* @alias toolresults.projects.histories.executions.create
* @memberOf! toolresults(v1beta3firstparty)
*
* @param {object} params Parameters for request
* @param {string} params.historyId A History id. Required.
* @param {string} params.projectId A Project id. Required.
* @param {string=} params.requestId A unique request ID for server to detect duplicated requests. For example, a UUID. Optional, but strongly recommended.
* @param {toolresults(v1beta3firstparty).Execution} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
create: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/toolresults/v1beta3firstparty/projects/{projectId}/histories/{historyId}/executions',
method: 'POST'
}, options),
params: params,
requiredParams: ['projectId', 'historyId'],
pathParams: ['historyId', 'projectId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* toolresults.projects.histories.executions.get
*
* @desc Gets an Execution. May return any of the following canonical error codes: - PERMISSION_DENIED - if the user is not authorized to write to project - INVALID_ARGUMENT - if the request is malformed - NOT_FOUND - if the Execution does not exist
*
* @alias toolresults.projects.histories.executions.get
* @memberOf! toolresults(v1beta3firstparty)
*
* @param {object} params Parameters for request
* @param {string} params.executionId An Execution id. Required.
* @param {string} params.historyId A History id. Required.
* @param {string} params.projectId A Project id. Required.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/toolresults/v1beta3firstparty/projects/{projectId}/histories/{historyId}/executions/{executionId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['projectId', 'historyId', 'executionId'],
pathParams: ['executionId', 'historyId', 'projectId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* toolresults.projects.histories.executions.list
*
* @desc Lists Histories for a given Project. The executions are sorted by creation_time in descending order. The execution_id key will be used to order the executions with the same creation_time. May return any of the following canonical error codes: - PERMISSION_DENIED - if the user is not authorized to read project - INVALID_ARGUMENT - if the request is malformed - NOT_FOUND - if the containing History does not exist
*
* @alias toolresults.projects.histories.executions.list
* @memberOf! toolresults(v1beta3firstparty)
*
* @param {object} params Parameters for request
* @param {string} params.historyId A History id. Required.
* @param {integer=} params.pageSize The maximum number of Executions to fetch. Default value: 25. The server will use this default if the field is not set or has a value of 0. Optional.
* @param {string=} params.pageToken A continuation token to resume the query at the next item. Optional.
* @param {string} params.projectId A Project id. Required.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/toolresults/v1beta3firstparty/projects/{projectId}/histories/{historyId}/executions',
method: 'GET'
}, options),
params: params,
requiredParams: ['projectId', 'historyId'],
pathParams: ['historyId', 'projectId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* toolresults.projects.histories.executions.patch
*
* @desc Updates an existing Execution with the supplied partial entity. May return any of the following canonical error codes: - PERMISSION_DENIED - if the user is not authorized to write to project - INVALID_ARGUMENT - if the request is malformed - FAILED_PRECONDITION - if the requested state transition is illegal - NOT_FOUND - if the containing History does not exist
*
* @alias toolresults.projects.histories.executions.patch
* @memberOf! toolresults(v1beta3firstparty)
*
* @param {object} params Parameters for request
* @param {string} params.executionId Required.
* @param {string} params.historyId Required.
* @param {string} params.projectId A Project id. Required.
* @param {string=} params.requestId A unique request ID for server to detect duplicated requests. For example, a UUID. Optional, but strongly recommended.
* @param {toolresults(v1beta3firstparty).Execution} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/toolresults/v1beta3firstparty/projects/{projectId}/histories/{historyId}/executions/{executionId}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['projectId', 'historyId', 'executionId'],
pathParams: ['executionId', 'historyId', 'projectId'],
context: self
};
return createAPIRequest(parameters, callback);
},
steps: {
/**
* toolresults.projects.histories.executions.steps.create
*
* @desc Creates a Step. The returned Step will have the id set. May return any of the following canonical error codes: - PERMISSION_DENIED - if the user is not authorized to write to project - INVALID_ARGUMENT - if the request is malformed - FAILED_PRECONDITION - if the step is too large (more than 10Mib) - NOT_FOUND - if the containing Execution does not exist
*
* @alias toolresults.projects.histories.executions.steps.create
* @memberOf! toolresults(v1beta3firstparty)
*
* @param {object} params Parameters for request
* @param {string} params.executionId A Execution id. Required.
* @param {string} params.historyId A History id. Required.
* @param {string} params.projectId A Project id. Required.
* @param {string=} params.requestId A unique request ID for server to detect duplicated requests. For example, a UUID. Optional, but strongly recommended.
* @param {toolresults(v1beta3firstparty).Step} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
create: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/toolresults/v1beta3firstparty/projects/{projectId}/histories/{historyId}/executions/{executionId}/steps',
method: 'POST'
}, options),
params: params,
requiredParams: ['projectId', 'historyId', 'executionId'],
pathParams: ['executionId', 'historyId', 'projectId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* toolresults.projects.histories.executions.steps.get
*
* @desc Gets a Step. May return any of the following canonical error codes: - PERMISSION_DENIED - if the user is not authorized to read project - INVALID_ARGUMENT - if the request is malformed - NOT_FOUND - if the Step does not exist
*
* @alias toolresults.projects.histories.executions.steps.get
* @memberOf! toolresults(v1beta3firstparty)
*
* @param {object} params Parameters for request
* @param {string} params.executionId A Execution id. Required.
* @param {string} params.historyId A History id. Required.
* @param {string} params.projectId A Project id. Required.
* @param {string} params.stepId A Step id. Required.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/toolresults/v1beta3firstparty/projects/{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['projectId', 'historyId', 'executionId', 'stepId'],
pathParams: ['executionId', 'historyId', 'projectId', 'stepId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* toolresults.projects.histories.executions.steps.getPerfMetricsSummary
*
* @desc Retrieves a PerfMetricsSummary. May return any of the following error code(s): - NOT_FOUND - The specified PerfMetricsSummary does not exist
*
* @alias toolresults.projects.histories.executions.steps.getPerfMetricsSummary
* @memberOf! toolresults(v1beta3firstparty)
*
* @param {object} params Parameters for request
* @param {string} params.executionId A tool results execution ID.
* @param {string} params.historyId A tool results history ID.
* @param {string} params.projectId The cloud project
* @param {string} params.stepId A tool results step ID.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
getPerfMetricsSummary: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/toolresults/v1beta3firstparty/projects/{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}/perfMetricsSummary',
method: 'GET'
}, options),
params: params,
requiredParams: ['projectId', 'historyId', 'executionId', 'stepId'],
pathParams: ['executionId', 'historyId', 'projectId', 'stepId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* toolresults.projects.histories.executions.steps.list
*
* @desc Lists Steps for a given Execution. The steps are sorted by creation_time in descending order. The step_id key will be used to order the steps with the same creation_time. May return any of the following canonical error codes: - PERMISSION_DENIED - if the user is not authorized to read project - INVALID_ARGUMENT - if the request is malformed - FAILED_PRECONDITION - if an argument in the request happens to be invalid; e.g. if an attempt is made to list the children of a nonexistent Step - NOT_FOUND - if the containing Execution does not exist
*
* @alias toolresults.projects.histories.executions.steps.list
* @memberOf! toolresults(v1beta3firstparty)
*
* @param {object} params Parameters for request
* @param {string} params.executionId A Execution id. Required.
* @param {string} params.historyId A History id. Required.
* @param {integer=} params.pageSize The maximum number of Steps to fetch. Default value: 25. The server will use this default if the field is not set or has a value of 0. Optional.
* @param {string=} params.pageToken A continuation token to resume the query at the next item. Optional.
* @param {string} params.projectId A Project id. Required.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/toolresults/v1beta3firstparty/projects/{projectId}/histories/{historyId}/executions/{executionId}/steps',
method: 'GET'
}, options),
params: params,
requiredParams: ['projectId', 'historyId', 'executionId'],
pathParams: ['executionId', 'historyId', 'projectId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* toolresults.projects.histories.executions.steps.patch
*
* @desc Updates an existing Step with the supplied partial entity. May return any of the following canonical error codes: - PERMISSION_DENIED - if the user is not authorized to write project - INVALID_ARGUMENT - if the request is malformed - FAILED_PRECONDITION - if the requested state transition is illegal (e.g try to upload a duplicate xml file), if the updated step is too large (more than 10Mib) - NOT_FOUND - if the containing Execution does not exist
*
* @alias toolresults.projects.histories.executions.steps.patch
* @memberOf! toolresults(v1beta3firstparty)
*
* @param {object} params Parameters for request
* @param {string} params.executionId A Execution id. Required.
* @param {string} params.historyId A History id. Required.
* @param {string} params.projectId A Project id. Required.
* @param {string=} params.requestId A unique request ID for server to detect duplicated requests. For example, a UUID. Optional, but strongly recommended.
* @param {string} params.stepId A Step id. Required.
* @param {toolresults(v1beta3firstparty).Step} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
patch: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/toolresults/v1beta3firstparty/projects/{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}',
method: 'PATCH'
}, options),
params: params,
requiredParams: ['projectId', 'historyId', 'executionId', 'stepId'],
pathParams: ['executionId', 'historyId', 'projectId', 'stepId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* toolresults.projects.histories.executions.steps.publishXunitXmlFiles
*
* @desc Publish xml files to an existing Step. May return any of the following canonical error codes: - PERMISSION_DENIED - if the user is not authorized to write project - INVALID_ARGUMENT - if the request is malformed - FAILED_PRECONDITION - if the requested state transition is illegal, e.g try to upload a duplicate xml file or a file too large. - NOT_FOUND - if the containing Execution does not exist
*
* @alias toolresults.projects.histories.executions.steps.publishXunitXmlFiles
* @memberOf! toolresults(v1beta3firstparty)
*
* @param {object} params Parameters for request
* @param {string} params.executionId A Execution id. Required.
* @param {string} params.historyId A History id. Required.
* @param {string} params.projectId A Project id. Required.
* @param {string} params.stepId A Step id. Note: This step must include a TestExecutionStep. Required.
* @param {toolresults(v1beta3firstparty).PublishXunitXmlFilesRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
publishXunitXmlFiles: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/toolresults/v1beta3firstparty/projects/{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}:publishXunitXmlFiles',
method: 'POST'
}, options),
params: params,
requiredParams: ['projectId', 'historyId', 'executionId', 'stepId'],
pathParams: ['executionId', 'historyId', 'projectId', 'stepId'],
context: self
};
return createAPIRequest(parameters, callback);
},
perfMetricsSummary: {
/**
* toolresults.projects.histories.executions.steps.perfMetricsSummary.create
*
* @desc Creates a PerfMetricsSummary resource. May return any of the following error code(s): - ALREADY_EXISTS - A PerfMetricSummary already exists for the given Step - NOT_FOUND - The containing Step does not exist
*
* @alias toolresults.projects.histories.executions.steps.perfMetricsSummary.create
* @memberOf! toolresults(v1beta3firstparty)
*
* @param {object} params Parameters for request
* @param {string} params.executionId A tool results execution ID.
* @param {string} params.historyId A tool results history ID.
* @param {string} params.projectId The cloud project
* @param {string} params.stepId A tool results step ID.
* @param {toolresults(v1beta3firstparty).PerfMetricsSummary} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
create: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/toolresults/v1beta3firstparty/projects/{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}/perfMetricsSummary',
method: 'POST'
}, options),
params: params,
requiredParams: ['projectId', 'historyId', 'executionId', 'stepId'],
pathParams: ['executionId', 'historyId', 'projectId', 'stepId'],
context: self
};
return createAPIRequest(parameters, callback);
}
},
perfSampleSeries: {
/**
* toolresults.projects.histories.executions.steps.perfSampleSeries.create
*
* @desc Creates a PerfSampleSeries. May return any of the following error code(s): - ALREADY_EXISTS - PerfMetricSummary already exists for the given Step - NOT_FOUND - The containing Step does not exist
*
* @alias toolresults.projects.histories.executions.steps.perfSampleSeries.create
* @memberOf! toolresults(v1beta3firstparty)
*
* @param {object} params Parameters for request
* @param {string} params.executionId A tool results execution ID.
* @param {string} params.historyId A tool results history ID.
* @param {string} params.projectId The cloud project
* @param {string} params.stepId A tool results step ID.
* @param {toolresults(v1beta3firstparty).PerfSampleSeries} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
create: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/toolresults/v1beta3firstparty/projects/{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}/perfSampleSeries',
method: 'POST'
}, options),
params: params,
requiredParams: ['projectId', 'historyId', 'executionId', 'stepId'],
pathParams: ['executionId', 'historyId', 'projectId', 'stepId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* toolresults.projects.histories.executions.steps.perfSampleSeries.get
*
* @desc Gets a PerfSampleSeries. May return any of the following error code(s): - NOT_FOUND - The specified PerfSampleSeries does not exist
*
* @alias toolresults.projects.histories.executions.steps.perfSampleSeries.get
* @memberOf! toolresults(v1beta3firstparty)
*
* @param {object} params Parameters for request
* @param {string} params.executionId A tool results execution ID.
* @param {string} params.historyId A tool results history ID.
* @param {string} params.projectId The cloud project
* @param {string} params.sampleSeriesId A sample series id
* @param {string} params.stepId A tool results step ID.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
get: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/toolresults/v1beta3firstparty/projects/{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}/perfSampleSeries/{sampleSeriesId}',
method: 'GET'
}, options),
params: params,
requiredParams: ['projectId', 'historyId', 'executionId', 'stepId', 'sampleSeriesId'],
pathParams: ['executionId', 'historyId', 'projectId', 'sampleSeriesId', 'stepId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* toolresults.projects.histories.executions.steps.perfSampleSeries.list
*
* @desc Lists PerfSampleSeries for a given Step. The request provides an optional filter which specifies one or more PerfMetricsType to include in the result; if none returns all. The resulting PerfSampleSeries are sorted by ids. May return any of the following canonical error codes: - NOT_FOUND - The containing Step does not exist
*
* @alias toolresults.projects.histories.executions.steps.perfSampleSeries.list
* @memberOf! toolresults(v1beta3firstparty)
*
* @param {object} params Parameters for request
* @param {string} params.executionId A tool results execution ID.
* @param {string=} params.filter Specify one or more PerfMetricType values such as CPU to filter the result
* @param {string} params.historyId A tool results history ID.
* @param {string} params.projectId The cloud project
* @param {string} params.stepId A tool results step ID.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/toolresults/v1beta3firstparty/projects/{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}/perfSampleSeries',
method: 'GET'
}, options),
params: params,
requiredParams: ['projectId', 'historyId', 'executionId', 'stepId'],
pathParams: ['executionId', 'historyId', 'projectId', 'stepId'],
context: self
};
return createAPIRequest(parameters, callback);
},
samples: {
/**
* toolresults.projects.histories.executions.steps.perfSampleSeries.samples.batchCreate
*
* @desc Creates a batch of PerfSamples - a client can submit multiple batches of Perf Samples through repeated calls to this method in order to split up a large request payload - duplicates and existing timestamp entries will be ignored. - the batch operation may partially succeed - the set of elements successfully inserted is returned in the response (omits items which already existed in the database). May return any of the following canonical error codes: - NOT_FOUND - The containing PerfSampleSeries does not exist
*
* @alias toolresults.projects.histories.executions.steps.perfSampleSeries.samples.batchCreate
* @memberOf! toolresults(v1beta3firstparty)
*
* @param {object} params Parameters for request
* @param {string} params.executionId A tool results execution ID.
* @param {string} params.historyId A tool results history ID.
* @param {string} params.projectId The cloud project
* @param {string} params.sampleSeriesId A sample series id
* @param {string} params.stepId A tool results step ID.
* @param {toolresults(v1beta3firstparty).BatchCreatePerfSamplesRequest} params.resource Request body data
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
batchCreate: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/toolresults/v1beta3firstparty/projects/{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}/perfSampleSeries/{sampleSeriesId}/samples:batchCreate',
method: 'POST'
}, options),
params: params,
requiredParams: ['projectId', 'historyId', 'executionId', 'stepId', 'sampleSeriesId'],
pathParams: ['executionId', 'historyId', 'projectId', 'sampleSeriesId', 'stepId'],
context: self
};
return createAPIRequest(parameters, callback);
},
/**
* toolresults.projects.histories.executions.steps.perfSampleSeries.samples.list
*
* @desc Lists the Performance Samples of a given Sample Series - The list results are sorted by timestamps ascending - The default page size is 500 samples; and maximum size allowed 5000 - The response token indicates the last returned PerfSample timestamp - When the results size exceeds the page size, submit a subsequent request including the page token to return the rest of the samples up to the page limit May return any of the following canonical error codes: - OUT_OF_RANGE - The specified request page_token is out of valid range - NOT_FOUND - The containing PerfSampleSeries does not exist
*
* @alias toolresults.projects.histories.executions.steps.perfSampleSeries.samples.list
* @memberOf! toolresults(v1beta3firstparty)
*
* @param {object} params Parameters for request
* @param {string} params.executionId A tool results execution ID.
* @param {string} params.historyId A tool results history ID.
* @param {integer=} params.pageSize The default page size is 500 samples, and the maximum size is 5000. If the page_size is greater than 5000, the effective page size will be 5000
* @param {string=} params.pageToken Optional, the next_page_token returned in the previous response
* @param {string} params.projectId The cloud project
* @param {string} params.sampleSeriesId A sample series id
* @param {string} params.stepId A tool results step ID.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/toolresults/v1beta3firstparty/projects/{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}/perfSampleSeries/{sampleSeriesId}/samples',
method: 'GET'
}, options),
params: params,
requiredParams: ['projectId', 'historyId', 'executionId', 'stepId', 'sampleSeriesId'],
pathParams: ['executionId', 'historyId', 'projectId', 'sampleSeriesId', 'stepId'],
context: self
};
return createAPIRequest(parameters, callback);
}
}
},
thumbnails: {
/**
* toolresults.projects.histories.executions.steps.thumbnails.list
*
* @desc Lists thumbnails of images attached to a step. May return any of the following canonical error codes: - PERMISSION_DENIED - if the user is not authorized to read from the project, or from any of the images - INVALID_ARGUMENT - if the request is malformed - NOT_FOUND - if the step does not exist, or if any of the images do not exist
*
* @alias toolresults.projects.histories.executions.steps.thumbnails.list
* @memberOf! toolresults(v1beta3firstparty)
*
* @param {object} params Parameters for request
* @param {string} params.executionId An Execution id. Required.
* @param {string} params.historyId A History id. Required.
* @param {integer=} params.pageSize The maximum number of thumbnails to fetch. Default value: 50. The server will use this default if the field is not set or has a value of 0. Optional.
* @param {string=} params.pageToken A continuation token to resume the query at the next item. Optional.
* @param {string} params.projectId A Project id. Required.
* @param {string} params.stepId A Step id. Required.
* @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`.
* @param {callback} callback The callback that handles the response.
* @return {object} Request object
*/
list: function (params, options, callback) {
if (typeof options === 'function') {
callback = options;
options = {};
}
options || (options = {});
var parameters = {
options: utils.extend({
url: 'https://www.googleapis.com/toolresults/v1beta3firstparty/projects/{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}/thumbnails',
method: 'GET'
}, options),
params: params,
requiredParams: ['projectId', 'historyId', 'executionId', 'stepId'],
pathParams: ['executionId', 'historyId', 'projectId', 'stepId'],
context: self
};
return createAPIRequest(parameters, callback);
}
}
}
}
}
};
}
/**
* @typedef Any
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {string} typeUrl A URL/resource name whose content describes the type of the serialized protocol buffer message.
For URLs which use the scheme `http`, `https`, or no scheme, the following restrictions and interpretations apply:
* If no scheme is provided, `https` is assumed. * The last segment of the URL's path must represent the fully qualified name of the type (as in `path/google.protobuf.Duration`). The name should be in a canonical form (e.g., leading "." is not accepted). * An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error. * Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)
Schemes other than `http`, `https` (or the empty scheme) might be used with implementation specific semantics.
* @property {string} value Must be a valid serialized protocol buffer of the above specified type.
*/
/**
* @typedef BasicPerfSampleSeries
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {string} perfMetricType
* @property {string} perfUnit
* @property {string} sampleSeriesLabel
*/
/**
* @typedef BatchCreatePerfSamplesRequest
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {toolresults(v1beta3firstparty).PerfSample[]} perfSamples The set of PerfSamples to create should not include existing timestamps
*/
/**
* @typedef BatchCreatePerfSamplesResponse
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {toolresults(v1beta3firstparty).PerfSample[]} perfSamples
*/
/**
* @typedef CPUInfo
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {string} cpuProcessor description of the device processor ie '1.8 GHz hexa core 64-bit ARMv8-A'
* @property {number} cpuSpeedInGhz the CPU clock speed in GHz
* @property {integer} numberOfCores the number of CPU cores
*/
/**
* @typedef Duration
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {integer} nanos Signed fractions of a second at nanosecond resolution of the span of time. Durations less than one second are represented with a 0 `seconds` field and a positive or negative `nanos` field. For durations of one second or more, a non-zero value for the `nanos` field must be of the same sign as the `seconds` field. Must be from -999,999,999 to +999,999,999 inclusive.
* @property {string} seconds Signed seconds of the span of time. Must be from -315,576,000,000 to +315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
*/
/**
* @typedef Execution
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {toolresults(v1beta3firstparty).Timestamp} completionTime The time when the Execution status transitioned to COMPLETE.
This value will be set automatically when state transitions to COMPLETE.
- In response: set if the execution state is COMPLETE. - In create/update request: never set
* @property {toolresults(v1beta3firstparty).Timestamp} creationTime The time when the Execution was created.
This value will be set automatically when CreateExecution is called.
- In response: always set - In create/update request: never set
* @property {string} executionId A unique identifier within a History for this Execution.
Returns INVALID_ARGUMENT if this field is set or overwritten by the caller.
- In response always set - In create/update request: never set
* @property {toolresults(v1beta3firstparty).Outcome} outcome Classify the result, for example into SUCCESS or FAILURE
- In response: present if set by create/update request - In create/update request: optional
* @property {string} state The initial state is IN_PROGRESS.
The only legal state transitions is from IN_PROGRESS to COMPLETE.
A PRECONDITION_FAILED will be returned if an invalid transition is requested.
The state can only be set to COMPLETE once. A FAILED_PRECONDITION will be returned if the state is set to COMPLETE multiple times.
If the state is set to COMPLETE, all the in-progress steps within the execution will be set as COMPLETE. If the outcome of the step is not set, the outcome will be set to INCONCLUSIVE.
- In response always set - In create/update request: optional
* @property {string} testExecutionMatrixId TestExecution Matrix ID that the Test Service uses.
- In response: present if set by create - In create: optional - In update: never set
*/
/**
* @typedef FailureDetail
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {boolean} crashed If the failure was severe because the system under test crashed.
* @property {boolean} notInstalled If an app is not installed and thus no test can be run with the app. This might be caused by trying to run a test on an unsupported platform.
* @property {boolean} otherNativeCrash If a native process other than the app crashed.
* @property {boolean} timedOut If the test overran some time limit, and that is why it failed.
* @property {boolean} unableToCrawl If the robo was unable to crawl the app; perhaps because the app did not start.
*/
/**
* @typedef FileReference
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {string} fileUri The URI of a file stored in Google Cloud Storage.
For example: http://storage.googleapis.com/mybucket/path/to/test.xml or in gsutil format: gs://mybucket/path/to/test.xml with version-specific info, gs://mybucket/path/to/test.xml#1360383693690000
An INVALID_ARGUMENT error will be returned if the URI format is not supported.
- In response: always set - In create/update request: always set
*/
/**
* @typedef History
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {string} displayName A short human-readable (plain text) name to display in the UI. Maximum of 100 characters.
- In response: present if set during create. - In create request: optional
* @property {string} historyId A unique identifier within a project for this History.
Returns INVALID_ARGUMENT if this field is set or overwritten by the caller.
- In response always set - In create request: never set
* @property {string} name A name to uniquely identify a history within a project. Maximum of 100 characters.
- In response always set - In create request: always set
*/
/**
* @typedef Image
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {toolresults(v1beta3firstparty).Status} error An error explaining why the thumbnail could not be rendered.
* @property {toolresults(v1beta3firstparty).ToolOutputReference} sourceImage A reference to the full-size, original image.
This is the same as the tool_outputs entry for the image under its Step.
Always set.
* @property {string} stepId The step to which the image is attached.
Always set.
* @property {toolresults(v1beta3firstparty).Thumbnail} thumbnail The thumbnail.
*/
/**
* @typedef InconclusiveDetail
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {boolean} abortedByUser If the end user aborted the test execution before a pass or fail could be determined. For example, the user pressed ctrl-c which sent a kill signal to the test runner while the test was running.
* @property {boolean} infrastructureFailure If the test runner could not determine success or failure because the test depends on a component other than the system under test which failed.
For example, a mobile test requires provisioning a device where the test executes, and that provisioning can fail.
*/
/**
* @typedef ListExecutionsResponse
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {toolresults(v1beta3firstparty).Execution[]} executions Executions.
Always set.
* @property {string} nextPageToken A continuation token to resume the query at the next item.
Will only be set if there are more Executions to fetch.
*/
/**
* @typedef ListHistoriesResponse
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {toolresults(v1beta3firstparty).History[]} histories Histories.
* @property {string} nextPageToken A continuation token to resume the query at the next item.
Will only be set if there are more histories to fetch.
Tokens are valid for up to one hour from the time of the first list request. For instance, if you make a list request at 1PM and use the token from this first request 10 minutes later, the token from this second response will only be valid for 50 minutes.
*/
/**
* @typedef ListPerfSampleSeriesResponse
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {toolresults(v1beta3firstparty).PerfSampleSeries[]} perfSampleSeries The resulting PerfSampleSeries sorted by id
*/
/**
* @typedef ListPerfSamplesResponse
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {string} nextPageToken Optional, returned if result size exceeds the page size specified in the request (or the default page size, 500, if unspecified). It indicates the last sample timestamp to be used as page_token in subsequent request
* @property {toolresults(v1beta3firstparty).PerfSample[]} perfSamples
*/
/**
* @typedef ListStepThumbnailsResponse
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {string} nextPageToken A continuation token to resume the query at the next item.
If set, indicates that there are more thumbnails to read, by calling list again with this value in the page_token field.
* @property {toolresults(v1beta3firstparty).Image[]} thumbnails A list of image data.
Images are returned in a deterministic order; they are ordered by these factors, in order of importance: * First, by their associated test case. Images without a test case are considered greater than images with one. * Second, by their creation time. Images without a creation time are greater than images with one. * Third, by the order in which they were added to the step (by calls to CreateStep or UpdateStep).
*/
/**
* @typedef ListStepsResponse
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {string} nextPageToken A continuation token to resume the query at the next item.
If set, indicates that there are more steps to read, by calling list again with this value in the page_token field.
* @property {toolresults(v1beta3firstparty).Step[]} steps Steps.
*/
/**
* @typedef MemoryInfo
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {string} memoryCapInKibibyte Maximum memory that can be allocated to the process in KiB
* @property {string} memoryTotalInKibibyte Total memory available on the device in KiB
*/
/**
* @typedef Outcome
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {toolresults(v1beta3firstparty).FailureDetail} failureDetail More information about a FAILURE outcome.
Returns INVALID_ARGUMENT if this field is set but the summary is not FAILURE.
Optional
* @property {toolresults(v1beta3firstparty).InconclusiveDetail} inconclusiveDetail More information about an INCONCLUSIVE outcome.
Returns INVALID_ARGUMENT if this field is set but the summary is not INCONCLUSIVE.
Optional
* @property {toolresults(v1beta3firstparty).SkippedDetail} skippedDetail More information about a SKIPPED outcome.
Returns INVALID_ARGUMENT if this field is set but the summary is not SKIPPED.
Optional
* @property {toolresults(v1beta3firstparty).SuccessDetail} successDetail More information about a SUCCESS outcome.
Returns INVALID_ARGUMENT if this field is set but the summary is not SUCCESS.
Optional
* @property {string} summary The simplest way to interpret a result.
Required
*/
/**
* @typedef PerfEnvironment
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {toolresults(v1beta3firstparty).CPUInfo} cpuInfo CPU related environment info
* @property {toolresults(v1beta3firstparty).MemoryInfo} memoryInfo Memory related environment info
*/
/**
* @typedef PerfMetricsSummary
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {string} executionId A tool results execution ID.
* @property {string} historyId A tool results history ID.
* @property {toolresults(v1beta3firstparty).PerfEnvironment} perfEnvironment Describes the environment in which the performance metrics were collected
* @property {string[]} perfMetrics Set of resource collected
* @property {string} projectId The cloud project
* @property {string} stepId A tool results step ID.
*/
/**
* @typedef PerfSample
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {toolresults(v1beta3firstparty).Timestamp} sampleTime Timestamp of collection
* @property {number} value Value observed
*/
/**
* @typedef PerfSampleSeries
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {toolresults(v1beta3firstparty).BasicPerfSampleSeries} basicPerfSampleSeries Basic series represented by a line chart
* @property {string} executionId A tool results execution ID.
* @property {string} historyId A tool results history ID.
* @property {string} projectId The cloud project
* @property {string} sampleSeriesId A sample series id
* @property {string} stepId A tool results step ID.
*/
/**
* @typedef ProjectSettings
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {string} defaultBucket The name of the Google Cloud Storage bucket to which results are written.
By default, this is unset.
In update request: optional In response: optional
* @property {string} name The name of the project's settings.
Always of the form: projects/{project-id}/settings
In update request: never set In response: always set
*/
/**
* @typedef PublishXunitXmlFilesRequest
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {toolresults(v1beta3firstparty).FileReference[]} xunitXmlFiles URI of the Xunit XML files to publish.
The maximum size of the file this reference is pointing to is 50MB.
Required.
*/
/**
* @typedef SkippedDetail
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {boolean} incompatibleAppVersion If the App doesn't support the specific API level.
* @property {boolean} incompatibleArchitecture If the App doesn't run on the specific architecture, for example, x86.
* @property {boolean} incompatibleDevice If the requested OS version doesn't run on the specific device model.
*/
/**
* @typedef StackTrace
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {string} exception The stack trace message.
Required
*/
/**
* @typedef Status
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {integer} code The status code, which should be an enum value of [google.rpc.Code][].
* @property {toolresults(v1beta3firstparty).Any[]} details A list of messages that carry the error details. There will be a common set of message types for APIs to use.
* @property {string} message A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the [google.rpc.Status.details][] field, or localized by the client.
*/
/**
* @typedef Step
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {toolresults(v1beta3firstparty).Timestamp} completionTime The time when the step status was set to complete.
This value will be set automatically when state transitions to COMPLETE.
- In response: set if the execution state is COMPLETE. - In create/update request: never set
* @property {toolresults(v1beta3firstparty).Timestamp} creationTime The time when the step was created.
- In response: always set - In create/update request: never set
* @property {string} description A description of this tool For example: mvn clean package -D skipTests=true
- In response: present if set by create/update request - In create/update request: optional
* @property {toolresults(v1beta3firstparty).Duration} deviceUsageDuration How much the device resource is used to perform the test.
This is the device usage used for billing purpose, which is different from the run_duration, for example, infrastructure failure won't be charged for device usage.
PRECONDITION_FAILED will be returned if one attempts to set a device_usage on a step which already has this field set.
- In response: present if previously set. - In create request: optional - In update request: optional
* @property {toolresults(v1beta3firstparty).StepDimensionValueEntry[]} dimensionValue If the execution containing this step has any dimension_definition set, then this field allows the child to specify the values of the dimensions.
The keys must exactly match the dimension_definition of the execution.
For example, if the execution has `dimension_definition = ['attempt', 'device']` then a step must define values for those dimensions, eg. `dimension_value = ['attempt': '1', 'device': 'Nexus 6']`
If a step does not participate in one dimension of the matrix, the value for that dimension should be empty string. For example, if one of the tests is executed by a runner which does not support retries, the step could have `dimension_value = ['attempt': '', 'device': 'Nexus 6']`
If the step does not participate in any dimensions of the matrix, it may leave dimension_value unset.
A PRECONDITION_FAILED will be returned if any of the keys do not exist in the dimension_definition of the execution.
A PRECONDITION_FAILED will be returned if another step in this execution already has the same name and dimension_value, but differs on other data fields, for example, step field is different.
A PRECONDITION_FAILED will be returned if dimension_value is set, and there is a dimension_definition in the execution which is not specified as one of the keys.
- In response: present if set by create - In create request: optional - In update request: never set
* @property {boolean} hasImages Whether any of the outputs of this step are images whose thumbnails can be fetched with ListThumbnails.
- In response: always set - In create/update request: never set
* @property {toolresults(v1beta3firstparty).StepLabelsEntry[]} labels Arbitrary user-supplied key/value pairs that are associated with the step.
Users are responsible for managing the key namespace such that keys don't accidentally collide.
An INVALID_ARGUMENT will be returned if the number of labels exceeds 100 or if the length of any of the keys or values exceeds 100 characters.
- In response: always set - In create request: optional - In update request: optional; any new key/value pair will be added to the map, and any new value for an existing key will update that key's value
* @property {string} name A short human-readable name to display in the UI. Maximum of 100 characters. For example: Clean build
A PRECONDITION_FAILED will be returned upon creating a new step if it shares its name and dimension_value with an existing step. If two steps represent a similar action, but have different dimension values, they should share the same name. For instance, if the same set of tests is run on two different platforms, the two steps should have the same name.
- In response: always set - In create request: always set - In update request: never set
* @property {toolresults(v1beta3firstparty).Outcome} outcome Classification of the result, for example into SUCCESS or FAILURE
- In response: present if set by create/update request - In create/update request: optional
* @property {toolresults(v1beta3firstparty).Duration} runDuration How long it took for this step to run.
If unset, this is set to the difference between creation_time and completion_time when the step is set to the COMPLETE state. In some cases, it is appropriate to set this value separately: For instance, if a step is created, but the operation it represents is queued for a few minutes before it executes, it would be appropriate not to include the time spent queued in its run_duration.
PRECONDITION_FAILED will be returned if one attempts to set a run_duration on a step which already has this field set.
- In response: present if previously set; always present on COMPLETE step - In create request: optional - In update request: optional
* @property {string} state The initial state is IN_PROGRESS. The only legal state transitions are * IN_PROGRESS -> COMPLETE
A PRECONDITION_FAILED will be returned if an invalid transition is requested.
It is valid to create Step with a state set to COMPLETE. The state can only be set to COMPLETE once. A PRECONDITION_FAILED will be returned if the state is set to COMPLETE multiple times.
- In response: always set - In create/update request: optional
* @property {string} stepId A unique identifier within a Execution for this Step.
Returns INVALID_ARGUMENT if this field is set or overwritten by the caller.
- In response: always set - In create/update request: never set
* @property {toolresults(v1beta3firstparty).TestExecutionStep} testExecutionStep An execution of a test runner.
* @property {toolresults(v1beta3firstparty).ToolExecutionStep} toolExecutionStep An execution of a tool (used for steps we don't explicitly support).
*/
/**
* @typedef StepDimensionValueEntry
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {string} key
* @property {string} value
*/
/**
* @typedef StepLabelsEntry
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {string} key
* @property {string} value
*/
/**
* @typedef SuccessDetail
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {boolean} otherNativeCrash If a native process other than the app crashed.
*/
/**
* @typedef TestCaseReference
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {string} className The name of the class.
* @property {string} name The name of the test case.
Required.
* @property {string} testSuiteName The name of the test suite to which this test case belongs.
*/
/**
* @typedef TestExecutionStep
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {toolresults(v1beta3firstparty).TestIssue[]} testIssues Issues observed during the test execution.
For example, if the mobile app under test crashed during the test, the error message and the stack trace content can be recorded here to assist debugging.
- In response: present if set by create or update - In create/update request: optional
* @property {toolresults(v1beta3firstparty).TestSuiteOverview[]} testSuiteOverviews List of test suite overview contents. This could be parsed from xUnit XML log by server, or uploaded directly by user. This references should only be called when test suites are fully parsed or uploaded.
The maximum allowed number of test suite overviews per step is 1000.
- In response: always set - In create request: optional - In update request: never (use publishXunitXmlFiles custom method instead)
* @property {toolresults(v1beta3firstparty).TestTiming} testTiming The timing break down of the test execution.
- In response: present if set by create or update - In create/update request: optional
* @property {toolresults(v1beta3firstparty).ToolExecution} toolExecution Represents the execution of the test runner.
The exit code of this tool will be used to determine if the test passed.
- In response: always set - In create/update request: optional
*/
/**
* @typedef TestIssue
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {string} errorMessage A brief human-readable message describing the abnormal event.
Required.
* @property {toolresults(v1beta3firstparty).StackTrace} stackTrace Optional.
*/
/**
* @typedef TestSuiteOverview
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {integer} errorCount Number of test cases in error, typically set by the service by parsing the xml_source.
- In create/response: always set - In update request: never
* @property {integer} failureCount Number of failed test cases, typically set by the service by parsing the xml_source. May also be set by the user.
- In create/response: always set - In update request: never
* @property {string} name The name of the test suite.
- In create/response: always set - In update request: never
* @property {integer} skippedCount Number of test cases not run, typically set by the service by parsing the xml_source.
- In create/response: always set - In update request: never
* @property {integer} totalCount Number of test cases, typically set by the service by parsing the xml_source.
- In create/response: always set - In update request: never
* @property {toolresults(v1beta3firstparty).FileReference} xmlSource If this test suite was parsed from XML, this is the URI where the original XML file is stored.
Note: Multiple test suites can share the same xml_source
Returns INVALID_ARGUMENT if the uri format is not supported.
- In create/response: optional - In update request: never
*/
/**
* @typedef TestTiming
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {toolresults(v1beta3firstparty).Duration} testProcessDuration How long it took to run the test process.
- In response: present if previously set. - In create/update request: optional
*/
/**
* @typedef Thumbnail
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {string} contentType The thumbnail's content type, i.e. "image/png".
Always set.
* @property {string} data The thumbnail file itself.
That is, the bytes here are precisely the bytes that make up the thumbnail file; they can be served as an image as-is (with the appropriate content type.)
Always set.
* @property {integer} heightPx The height of the thumbnail, in pixels.
Always set.
* @property {integer} widthPx The width of the thumbnail, in pixels.
Always set.
*/
/**
* @typedef Timestamp
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {integer} nanos Non-negative fractions of a second at nanosecond resolution. Negative second values with fractions must still have non-negative nanos values that count forward in time. Must be from 0 to 999,999,999 inclusive.
* @property {string} seconds Represents seconds of UTC time since Unix epoch 1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z inclusive.
*/
/**
* @typedef ToolExecution
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {string[]} commandLineArguments The full tokenized command line including the program name (equivalent to argv in a C program).
- In response: present if set by create request - In create request: optional - In update request: never set
* @property {toolresults(v1beta3firstparty).ToolExitCode} exitCode Tool execution exit code. This field will be set once the tool has exited.
- In response: present if set by create/update request - In create request: optional - In update request: optional, a FAILED_PRECONDITION error will be returned if an exit_code is already set.
* @property {toolresults(v1beta3firstparty).FileReference[]} toolLogs References to any plain text logs output the tool execution.
This field can be set before the tool has exited in order to be able to have access to a live view of the logs while the tool is running.
The maximum allowed number of tool logs per step is 1000.
- In response: present if set by create/update request - In create request: optional - In update request: optional, any value provided will be appended to the existing list
* @property {toolresults(v1beta3firstparty).ToolOutputReference[]} toolOutputs References to opaque files of any format output by the tool execution.
The maximum allowed number of tool outputs per step is 1000.
- In response: present if set by create/update request - In create request: optional - In update request: optional, any value provided will be appended to the existing list
*/
/**
* @typedef ToolExecutionStep
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {toolresults(v1beta3firstparty).ToolExecution} toolExecution A Tool execution.
- In response: present if set by create/update request - In create/update request: optional
*/
/**
* @typedef ToolExitCode
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {integer} number Tool execution exit code. A value of 0 means that the execution was successful.
- In response: always set - In create/update request: always set
*/
/**
* @typedef ToolOutputReference
* @memberOf! toolresults(v1beta3firstparty)
* @type object
* @property {toolresults(v1beta3firstparty).Timestamp} creationTime The creation time of the file.
- In response: present if set by create/update request - In create/update request: optional
* @property {toolresults(v1beta3firstparty).FileReference} output A FileReference to an output file.
- In response: always set - In create/update request: always set
* @property {toolresults(v1beta3firstparty).TestCaseReference} testCase The test case to which this output file belongs.
- In response: present if set by create/update request - In create/update request: optional
*/
module.exports = Toolresults;
|
| File | Statements | Branches | Functions | Lines | |||||
|---|---|---|---|---|---|---|---|---|---|
| apirequest.js | 12.99% | (10 / 77) | 0% | (0 / 58) | 0% | (0 / 8) | 12.99% | (10 / 77) | |
| discovery.js | 20% | (22 / 110) | 2.08% | (1 / 48) | 4.76% | (1 / 21) | 20% | (22 / 110) | |
| generator.js | 11.11% | (14 / 126) | 0% | (0 / 43) | 0% | (0 / 25) | 11.11% | (14 / 126) | |
| generator_utils.js | 66.67% | (6 / 9) | 0% | (0 / 4) | 0% | (0 / 2) | 66.67% | (6 / 9) | |
| googleapis.js | 41.38% | (24 / 58) | 14.29% | (2 / 14) | 50% | (5 / 10) | 41.38% | (24 / 58) | |
| pemverifier.js | 100% | (1 / 1) | 100% | (0 / 0) | 100% | (0 / 0) | 100% | (1 / 1) | |
| transporters.js | 100% | (1 / 1) | 100% | (0 / 0) | 100% | (0 / 0) | 100% | (1 / 1) | |
| utils.js | 100% | (1 / 1) | 100% | (0 / 0) | 100% | (0 / 0) | 100% | (1 / 1) |
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 | 1 1 1 1 1 1 1 1 1 1 | // Copyright 2014-2016, Google, Inc.
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
'use strict';
var utils = require('./utils.js');
var DefaultTransporter = require('./transporters.js');
var stream = require('stream');
var parseString = require('string-template');
function isReadableStream (obj) {
return obj instanceof stream.Stream &&
typeof obj._read === 'function' &&
typeof obj._readableState === 'object';
}
function logError (err) {
if (err) {
console.error(err);
}
}
function createCallback (callback) {
return typeof callback === 'function' ? callback : logError;
}
function getMissingParams (params, required) {
var missing = [];
required.forEach(function (param) {
// Is the required param in the params object?
if (!params[param]) {
missing.push(param);
}
});
// If there are any required params missing, return their names in array, otherwise return null
return missing.length > 0 ? missing : null;
}
/**
* Create and send request to Google API
* @param {object} parameters Parameters used to form request
* @param {Function} callback Callback when request finished or error found
* @return {Request} Returns Request object or null
*/
function createAPIRequest (parameters, callback) {
var req, body, missingParams;
var params = parameters.params;
var options = utils.extend({}, parameters.options);
// If the params are not present, and callback was passed instead,
// use params as the callback and create empty params.
if (typeof params === 'function') {
callback = params;
params = {};
}
// Create a new params object so it can no longer be modified from outside code
// Also support global and per-client params, but allow them to be overriden per-request
params = utils.extend(
{}, // New base object
parameters.context.google._options.params, // Global params
parameters.context._options.params, // Per-client params
params // API call params
);
var media = params.media || {};
var resource = params.resource;
var authClient = params.auth ||
parameters.context._options.auth ||
parameters.context.google._options.auth;
var defaultMime = typeof media.body === 'string' ? 'text/plain' : 'application/octet-stream';
delete params.media;
delete params.resource;
delete params.auth;
// Grab headers from user provided options
var headers = params.headers || {};
delete params.headers;
// Un-alias parameters that were modified due to conflicts with reserved names
Object.keys(params).forEach(function (key) {
if (key.slice(-1) === '_') {
var newKey = key.slice(0, -1);
params[newKey] = params[key];
delete params[key];
}
});
// Normalize callback
callback = createCallback(callback);
// Check for missing required parameters in the API request
missingParams = getMissingParams(params, parameters.requiredParams);
if (missingParams) {
// Some params are missing - stop further operations and inform the developer which required
// params are not included in the request
callback(new Error('Missing required parameters: ' + missingParams.join(', ')));
return null;
}
// Parse urls
if (options.url) {
options.url = parseString(options.url, params);
}
if (parameters.mediaUrl) {
parameters.mediaUrl = parseString(parameters.mediaUrl, params);
}
// delete path parameters from the params object so they do not end up in query
parameters.pathParams.forEach(function (param) {
delete params[param];
});
// if authClient is actually a string, use it as an API KEY
if (typeof authClient === 'string') {
params.key = params.key || authClient;
authClient = null;
}
if (parameters.mediaUrl && media.body) {
options.url = parameters.mediaUrl;
if (resource) {
params.uploadType = 'multipart';
options.multipart = [
{
'Content-Type': 'application/json',
body: JSON.stringify(resource)
},
{
'Content-Type': media.mimeType || (resource && resource.mimeType) || defaultMime,
body: media.body // can be a readable stream or raw string!
}
];
} else {
params.uploadType = 'media';
utils.extend(headers, {
'Content-Type': media.mimeType || defaultMime
});
if (isReadableStream(media.body)) {
body = media.body;
} else {
options.body = media.body;
}
}
} else {
options.json = resource || (
(options.method === 'GET' || options.method === 'DELETE') ? true : {}
);
}
options.headers = headers;
options.qs = params;
options.useQuerystring = true;
options = utils.extend({},
parameters.context.google._options,
parameters.context._options,
options
);
delete options.auth; // is overridden by our auth code
delete options.params; // We handle params ourselves and Request does not recognise 'params'
// create request (using authClient or otherwise and return request obj)
if (authClient) {
req = authClient.request(options, callback);
} else {
req = new DefaultTransporter().request(options, callback);
}
if (body) {
body.pipe(req);
}
return req;
}
/**
* Exports createAPIRequest
* @type {Function}
*/
module.exports = createAPIRequest;
|
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 | // Copyright 2014-2016, Google, Inc.
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
'use strict';
var generatorUtils = require('./generator_utils');
var DefaultTransporter = generatorUtils.DefaultTransporter;
var buildurl = generatorUtils.buildurl;
var handleError = generatorUtils.handleError;
var async = require('async');
var fs = require('fs');
var url = require('url');
var util = require('util');
var createAPIRequest = require('./apirequest');
var transporter = new DefaultTransporter();
function getPathParams (params) {
var pathParams = [];
if (typeof params !== 'object') {
params = {};
}
Object.keys(params).forEach(function (key) {
if (params[key].location === 'path') {
pathParams.push(key);
}
});
return pathParams;
}
/**
* Given a method schema, add a method to a target.
*
* @private
* @param {object} target The target to which to add the method.
* @param {object} schema The top-level schema that contains the rootUrl, etc.
* @param {object} method The method schema from which to generate the method.
* @param {object} context The context to add to the method.
*/
function makeMethod (schema, method, context) {
return function (params, callback) {
var url = buildurl(schema.rootUrl + schema.servicePath + method.path);
var parameters = {
options: {
url: url.substring(1, url.length - 1),
method: method.httpMethod
},
params: params,
requiredParams: method.parameterOrder || [],
pathParams: getPathParams(method.parameters),
context: context
};
if (method.mediaUpload && method.mediaUpload.protocols &&
method.mediaUpload.protocols.simple &&
method.mediaUpload.protocols.simple.path) {
var mediaUrl = buildurl(
schema.rootUrl +
method.mediaUpload.protocols.simple.path
);
parameters.mediaUrl = mediaUrl.substring(1, mediaUrl.length - 1);
}
return createAPIRequest(parameters, callback);
};
}
/**
* Given a schema, add methods to a target.
*
* @private
* @param {object} target The target to which to apply the methods.
* @param {object} rootSchema The top-level schema, so we don't lose track of it
* during recursion.
* @param {object} schema The current schema from which to extract methods.
* @param {object} context The context to add to each method.
*/
function applyMethodsFromSchema (target, rootSchema, schema, context) {
if (schema.methods) {
for (var name in schema.methods) {
var method = schema.methods[name];
target[name] = makeMethod(rootSchema, method, context);
}
}
}
/**
* Given a schema, add methods and resources to a target.
*
* @private
* @param {object} target The target to which to apply the schema.
* @param {object} rootSchema The top-level schema, so we don't lose track of it
* during recursion.
* @param {object} schema The current schema from which to extract methods and
* resources.
* @param {object} context The context to add to each method.
*/
function applySchema (target, rootSchema, schema, context) {
applyMethodsFromSchema(target, rootSchema, schema, context);
if (schema.resources) {
for (var resourceName in schema.resources) {
var resource = schema.resources[resourceName];
if (!target[resourceName]) {
target[resourceName] = {};
}
applySchema(target[resourceName], rootSchema, resource, context);
}
}
}
/**
* Generate and Endpoint from an endpoint schema object.
*
* @private
* @param {object} schema The schema from which to generate the Endpoint.
* @return Function The Endpoint.
*/
function makeEndpoint (schema) {
var Endpoint = function (options) {
var self = this;
self._options = options || {};
applySchema(self, schema, schema, self);
};
return Endpoint;
}
/**
* Discovery for discovering API endpoints
*
* @private
* @param {object} options Options for discovery
* @this {Discovery}
*/
function Discovery (options) {
this.options = options || {};
}
/**
* Log output of generator
* Works just like console.log
*/
Discovery.prototype.log = function () {
if (this.options && this.options.debug) {
console.log.apply(this, arguments);
}
};
/**
* Generate all APIs and return as in-memory object.
*
* @param {function} callback Callback when all APIs have been generated
* @throws {Error} If there is an error generating any of the APIs
*/
Discovery.prototype.discoverAllAPIs = function (discoveryUrl, callback) {
var self = this;
var headers = this.options.includePrivate ? {} : { 'X-User-Ip': '0.0.0.0' };
transporter.request({
uri: discoveryUrl,
headers: headers
}, function (err, resp) {
if (err) {
return handleError(err, callback);
}
async.parallel(resp.items.map(function (api) {
return function (cb) {
self.discoverAPI(api.discoveryRestUrl, function (err, _api) {
if (err) {
return cb(err);
}
api.api = _api;
cb(null, api);
});
};
}), function (err, apis) {
if (err) {
return callback(err);
}
var versionIndex = {};
var apisIndex = {};
apis.forEach(function (api) {
if (!apisIndex[api.name]) {
versionIndex[api.name] = {};
apisIndex[api.name] = function (options) {
var type = typeof options;
var version;
if (type === 'string') {
version = options;
options = {};
} else if (type === 'object') {
version = options.version;
delete options.version;
} else {
throw new Error('Argument error: Accepts only string or object');
}
try {
var Endpoint = versionIndex[api.name][version];
var ep = new Endpoint(options);
ep.google = this; // for drive.google.transporter
return Object.freeze(ep); // create new & freeze
} catch (e) {
throw new Error(util.format('Unable to load endpoint %s("%s"): %s',
api.name, version, e.message));
}
};
}
versionIndex[api.name][api.version] = api.api;
});
return callback(null, apisIndex);
});
});
};
/**
* Generate API file given discovery URL
*
* @param {String} apiDiscoveryUrl URL or filename of discovery doc for API
* @param {function} callback Callback when successful write of API
* @throws {Error} If there is an error generating the API.
*/
Discovery.prototype.discoverAPI = function (apiDiscoveryUrl, callback) {
function _generate (err, resp) {
if (err) {
return handleError(err, callback);
}
return callback(null, makeEndpoint(resp));
}
if (typeof apiDiscoveryUrl === 'string') {
var parts = url.parse(apiDiscoveryUrl);
if (apiDiscoveryUrl && !parts.protocol) {
this.log('Reading from file ' + apiDiscoveryUrl);
try {
return fs.readFile(apiDiscoveryUrl, {
encoding: 'utf8'
}, function (err, file) {
_generate(err, JSON.parse(file));
});
} catch (err) {
return handleError(err, callback);
}
} else {
this.log('Requesting ' + apiDiscoveryUrl);
transporter.request({
uri: apiDiscoveryUrl
}, _generate);
}
} else {
var options = apiDiscoveryUrl;
this.log('Requesting ' + options.url);
var parameters = {
options: {
url: options.url,
method: 'GET'
},
requiredParams: [],
pathParams: [],
context: {
google: {
_options: {}
},
_options: {}
}
};
delete options.url;
parameters.params = options;
createAPIRequest(parameters, _generate);
}
};
/**
* Export the Discovery object
* @type {Discovery}
*/
module.exports = Discovery;
|
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 | 4 4 4 4 4 4 1 1 1 1 1 1 1 1 | // Copyright 2014-2016, Google, Inc.
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
'use strict';
var generatorUtils = require('./generator_utils');
var DefaultTransporter = generatorUtils.DefaultTransporter;
var buildurl = generatorUtils.buildurl;
var handleError = generatorUtils.handleError;
var async = require('async');
var swig = require('swig');
var beautify = require('js-beautify').js_beautify;
var path = require('path');
var mkdirp = require('mkdirp');
var fs = require('fs');
var url = require('url');
var argv = require('minimist')(process.argv.slice(2));
var args = argv._;
var DISCOVERY_URL = argv['discovery-url'] ? argv['discovery-url'] : (
args.length ? args[0] : 'https://www.googleapis.com/discovery/v1/apis/'
);
var FRAGMENT_URL = 'https://storage.googleapis.com/apisnippets-staging/public/';
var API_TEMPLATE = './templates/api-endpoint.js';
var BEAUTIFY_OPTIONS = {
'indent_size': 2,
'indent_char': ' ',
'eol': '\n',
'indent_level': 0,
'indent_with_tabs': false,
'preserve_newlines': true,
'max_preserve_newlines': 2,
'jslint_happy': false,
'space_after_anon_function': true,
'brace_style': 'collapse',
'keep_array_indentation': false,
'keep_function_indentation': true,
'space_before_conditional': true,
'break_chained_methods': false,
'eval_code': false,
'unescape_strings': false,
'wrap_line_length': 0,
'wrap_attributes': 'auto',
'wrap_attributes_indent_size': 4,
'end_with_newline': true
};
var RESERVED_PARAMS = ['resource', 'media', 'auth'];
var templateContents = fs.readFileSync(API_TEMPLATE, { encoding: 'utf8' });
var transporter = new DefaultTransporter();
/**
* A multi-line string is turned into one line.
*
* @private
* @param {string} str String to process
* @return {string} Single line string processed
*/
function oneLine (str) {
return str.replace(/\n/g, ' ');
}
/**
* Clean a string of comment tags.
*
* @private
* @param {string} str String to process
* @return {string} Single line string processed
*/
function cleanComments (str) {
// Convert /* into /x and */ into x/
return str.replace(/\*\//g, 'x/').replace(/\/\*/g, '/x');
}
/**
* Returns the list of names of APIS
*
* @private
* @param {object} items Object of api endpoints
* @return {array} Array of api names
*/
function getAPIs (items) {
var apis = [];
for (var i in items) {
apis.push(items[i].name);
}
return apis;
}
function getPathParams (params) {
var pathParams = [];
if (typeof params !== 'object') {
params = {};
}
Object.keys(params).forEach(function (key) {
if (params[key].location === 'path') {
pathParams.push(key);
}
});
return pathParams;
}
function getSafeParamName (param) {
if (RESERVED_PARAMS.indexOf(param) !== -1) {
return param + '_';
}
return param;
}
/**
* Disable auto-escaping its output
* @type {Boolean}
*/
swig.setFilter('buildurl', buildurl);
swig.setFilter('getAPIs', getAPIs);
swig.setFilter('oneLine', oneLine);
swig.setFilter('cleanComments', cleanComments);
swig.setFilter('getPathParams', getPathParams);
swig.setFilter('getSafeParamName', getSafeParamName);
swig.setFilter('cleanPaths', function (str) {
return str.replace(/\/\*\//gi, '/x/').replace(/\/\*`/gi, '/x');
});
swig.setDefaults({ loader: swig.loaders.fs(path.join(__dirname, '..', 'templates')) });
/**
* Generator for generating API endpoints
*
* @private
* @param {object} options Options for generation
* @this {Generator}
*/
function Generator (options) {
this.options = options || {};
}
/**
* Log output of generator
* Works just like console.log
*/
Generator.prototype.log = function () {
if (this.options && this.options.debug) {
console.log.apply(this, arguments);
}
};
/**
* Generate all APIs and write to files.
*
* @param {function} callback Callback when all APIs have been generated
* @throws {Error} If there is an error generating any of the APIs
*/
Generator.prototype.generateAllAPIs = function (callback) {
var self = this;
var headers = this.options.includePrivate ? {} : { 'X-User-Ip': '0.0.0.0' };
transporter.request({
uri: DISCOVERY_URL,
headers: headers
}, function (err, resp) {
if (err) {
return handleError(err, callback);
}
var apis = resp.items;
var queue = async.queue(function (api, next) {
self.log('Generating API for %s...', api.id);
self.generateAPI(api.discoveryRestUrl, function (err, filename) {
if (err) {
// Try again
self.generateAPI(api.discoveryRestUrl, next);
} else {
next(err, filename);
}
});
}, 10);
apis.forEach(function (api) {
queue.push(api);
});
queue.drain = callback;
});
};
function getFragmentsForSchema (schema, path, tasks) {
if (schema.methods) {
for (var methodName in schema.methods) {
var methodSchema = schema.methods[methodName];
methodSchema.sampleUrl = path + '.' + methodName + '.frag.json';
(function (schema) {
tasks.push(function (cb) {
transporter.request({
uri: schema.sampleUrl
}, function (err, response) {
if (err) {
return cb(err);
}
if (response && response.codeFragment && response.codeFragment['Node.js']) {
var fragment = response.codeFragment['Node.js'].fragment;
fragment = fragment.replace(/\/\*/gi, '/<');
fragment = fragment.replace(/\*\//gi, '>/');
fragment = fragment.replace(/`\*/gi, '`<');
fragment = fragment.replace(/\*`/gi, '>`');
var lines = fragment.split('\n');
lines.forEach(function (_line, i) {
if (_line) {
lines[i] = '* ' + lines[i];
} else {
lines[i] = '*';
}
});
fragment = lines.join('\n');
schema.fragment = fragment;
}
cb();
});
});
})(methodSchema);
}
}
if (schema.resources) {
for (var resourceName in schema.resources) {
getFragmentsForSchema(
schema.resources[resourceName],
path + '.' + resourceName,
tasks
);
}
}
}
/**
* Generate API file given discovery URL
* @param {String} apiDiscoveryUrl URL or filename of discovery doc for API
* @param {function} callback Callback when successful write of API
* @throws {Error} If there is an error generating the API.
*/
Generator.prototype.generateAPI = function (apiDiscoveryUrl, callback) {
function _generate (err, resp) {
if (err) {
handleError(err, callback);
return;
}
var tasks = [];
getFragmentsForSchema(
resp,
FRAGMENT_URL + resp.name + '/' + resp.version + '/0/' + resp.name,
tasks
);
// e.g. apis/drive/v2.js
var exportFilename = path.join(__dirname, '../apis', resp.name, resp.version + '.js');
var contents;
async.waterfall([
function (cb) {
async.parallel(tasks, cb);
},
function (results, cb) {
var result = swig.render(templateContents, { locals: resp });
contents = beautify(result, BEAUTIFY_OPTIONS);
mkdirp(path.dirname(exportFilename), cb);
},
function (dir, cb) {
fs.writeFile(exportFilename, contents, { encoding: 'utf8' }, cb);
}
], function (err) {
if (err) {
handleError(err, callback);
return;
}
callback(null, exportFilename);
});
}
var parts = url.parse(apiDiscoveryUrl);
if (apiDiscoveryUrl && !parts.protocol) {
this.log('Reading from file ' + apiDiscoveryUrl);
try {
return _generate(null, JSON.parse(fs.readFileSync(apiDiscoveryUrl, {
encoding: 'utf-8'
})));
} catch (err) {
return handleError(err, callback);
}
} else {
this.log('Requesting ' + apiDiscoveryUrl);
transporter.request({
uri: apiDiscoveryUrl
}, _generate);
}
};
/**
* Export the Generator object
* @type {Generator}
*/
module.exports = Generator;
|
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 | 1 1 1 1 1 1 | // Copyright 2014-2016, Google, Inc.
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
'use strict';
/**
* Build a string used to create a URL from the discovery doc provided URL.
*
* @private
* @param {String} input URL to build from
* @return {String} Resulting built URL
*/
function buildurl (input) {
return ('\'' + input + '\'')
// No * symbols
.replace(/\*/g, '')
// No + symbols
.replace(/\+/g, '')
// replace double slashes with single slash (except in https://)
.replace(/([^:]\/)\/+/g, '$1')
// No {/ symbols
.replace(/\{\//g, '/{');
}
/**
* Disable auto-escaping its output
* @type {Boolean}
*/
buildurl.safe = true;
/**
* Handle error object with callback
*
* @private
* @param {Error} err Error object to return in callback
* @param {Function=} callback Optional callback function
*/
function handleError (err, callback) {
if (callback && typeof callback === 'function') {
callback(err, null);
}
}
exports.DefaultTransporter = require('../lib/transporters');
exports.buildurl = buildurl;
exports.handleError = handleError;
|
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 | 1 1 1 1 1 1 1 113 1 113 1 1 1 1 1 1 1 1 1 1 113 1 1 1 | // Copyright 2012-2016, Google, Inc.
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
'use strict';
var path = require('path');
var fs = require('fs');
var util = require('util');
var Discovery = require('./discovery');
var discovery = new Discovery({ debug: false, includePrivate: false });
/**
* Load the apis from apis index file
* This file holds all version information
* @private
*/
var apis = {};
/**
* Return a Function that requires an API from the disk
* @param {String} filename Filename of API
* @return {function} function used to require the API from disk
* @private
*/
function requireAPI (filename) {
return function (options) {
var type = typeof options;
var version;
if (type === 'string') {
version = options;
options = {};
} else if (type === 'object') {
version = options.version;
delete options.version;
} else {
throw new Error('Argument error: Accepts only string or object');
}
try {
var endpointPath = path.join(__dirname, filename, path.basename(version));
var Endpoint = require(endpointPath);
var ep = new Endpoint(options);
ep.google = this; // for drive.google.transporter
return Object.freeze(ep); // create new & freeze
} catch (e) {
throw new Error(util.format('Unable to load endpoint %s("%s"): %s',
filename, version, e.message));
}
};
}
// Dynamically discover available APIs
fs.readdirSync(path.join(__dirname, '../apis')).forEach(function (file) {
apis[file] = requireAPI('../apis/' + file);
});
/**
* @class GoogleAuth
*/
var GoogleAuth = require('google-auth-library');
/**
* GoogleApis constructor.
*
* @example
* var GoogleApis = require('googleapis').GoogleApis;
* var google = new GoogleApis();
*
* @class GoogleApis
* @param {Object} [options] Configuration options.
*/
function GoogleApis (options) {
this.options(options);
this.addAPIs(apis);
/**
* A reference to an instance of GoogleAuth.
*
* @name GoogleApis#auth
* @type {GoogleAuth}
*/
this.auth = new GoogleAuth();
/**
* A reference to the {@link GoogleApis} constructor function.
*
* @name GoogleApis#GoogleApis
* @see GoogleApis
* @type {Function}
*/
this.GoogleApis = GoogleApis;
}
/**
* Set options.
*
* @param {Object} [options] Configuration options.
*/
GoogleApis.prototype.options = function (options) {
this._options = options || {};
};
/**
* Add APIs endpoints to googleapis object
* E.g. googleapis.drive and googleapis.datastore
*
* @name GoogleApis#addAPIs
* @method
* @param {Object} apis Apis to be added to this GoogleApis instance.
* @private
*/
GoogleApis.prototype.addAPIs = function (apis) {
for (var apiName in apis) {
this[apiName] = apis[apiName].bind(this);
}
};
/**
* Dynamically generate an apis object that can provide Endpoint objects for the
* discovered APIs.
*
* @example
* var google = require('googleapis');
* var discoveryUrl = 'https://myapp.appspot.com/_ah/api/discovery/v1/apis/';
* google.discover(discoveryUrl, function (err) {
* var someapi = google.someapi('v1');
* });
*
* @name GoogleApis#discover
* @method
* @param {string} url Url to the discovery service for a set of APIs. e.g.,
* https://www.googleapis.com/discovery/v1/apis
* @param {Function} callback Callback function.
*/
GoogleApis.prototype.discover = function (url, callback) {
var self = this;
discovery.discoverAllAPIs(url, function (err, apis) {
if (err) {
return callback(err);
}
self.addAPIs(apis);
callback();
});
};
/**
* Dynamically generate an Endpoint object from a discovery doc.
*
* @example
* var google = require('google');
* var discoveryDocUrl = 'https://myapp.appspot.com/_ah/api/discovery/v1/apis/someapi/v1/rest';
* google.discoverApi(discoveryDocUrl, function (err, someapi) {
* // use someapi
* });
*
* @name GoogleApis#discoverAPI
* @method
* @param {string} path Url or file path to discover doc for a single API.
* @param {object} [options] Options to configure the Endpoint object generated
* from the discovery doc.
* @param {Function} callback Callback function.
*/
GoogleApis.prototype.discoverAPI = function (path, options, callback) {
var self = this;
if (typeof options === 'function') {
callback = options;
options = {};
}
if (!options) {
options = {};
}
discovery.discoverAPI(path, function (err, Endpoint) {
if (err) {
return callback(err);
}
var ep = new Endpoint(options);
ep.google = self; // for drive.google.transporter
return callback(null, Object.freeze(ep)); // create new & freeze
});
};
/**
* {@link GoogleApis} class.
*
* @name module:googleapis.GoogleApis
* @see GoogleApis
* @type {Function}
*/
/**
* {@link GoogleAuth} class.
*
* @name module:googleapis.auth
* @see GoogleAuth
* @type {Function}
*/
/**
* @example
* var google = require('googleapis');
*
* @module googleapis
* @type {GoogleApis}
*/
module.exports = new GoogleApis();
|
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | 1 | // Copyright 2012-2016, Google, Inc.
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
'use strict';
/**
* This code has been moved to the google-auth-library repo, at
* https://github.com/google/google-auth-library-nodejs.
*
* Please update your references to point to the google-auth-library implementation,
* rather than this file.
*/
module.exports = require('google-auth-library/lib/pemverifier.js');
|
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | 1 | // Copyright 2012-2016, Google, Inc.
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
'use strict';
/**
* This code has been moved to the google-auth-library repo, at
* https://github.com/google/google-auth-library-nodejs.
*
* Please update your references to point to the google-auth-library implementation,
* rather than this file.
*/
module.exports = require('google-auth-library/lib/transporters.js');
|
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | 1 | // Copyright 2012-2016, Google, Inc.
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
'use strict';
/**
* This code has been moved to the google-auth-library repo, at
* https://github.com/google/google-auth-library-nodejs.
*
* Please update your references to point to the google-auth-library implementation,
* rather than this file.
*/
module.exports = require('google-auth-library/lib/utils.js');
|
| File | Statements | Branches | Functions | Lines | |||||
|---|---|---|---|---|---|---|---|---|---|
| authclient.js | 100% | (1 / 1) | 100% | (0 / 0) | 100% | (0 / 0) | 100% | (1 / 1) | |
| computeclient.js | 100% | (1 / 1) | 100% | (0 / 0) | 100% | (0 / 0) | 100% | (1 / 1) | |
| jwtclient.js | 100% | (1 / 1) | 100% | (0 / 0) | 100% | (0 / 0) | 100% | (1 / 1) | |
| loginticket.js | 100% | (1 / 1) | 100% | (0 / 0) | 100% | (0 / 0) | 100% | (1 / 1) | |
| oauth2client.js | 100% | (1 / 1) | 100% | (0 / 0) | 100% | (0 / 0) | 100% | (1 / 1) |
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | 1 | // Copyright 2012-2016, Google, Inc.
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
'use strict';
/**
* This code has been moved to the google-auth-library repo, at
* https://github.com/google/google-auth-library-nodejs.
*
* Please update your references to point to the google-auth-library implementation,
* rather than this file.
*/
module.exports = require('google-auth-library/lib/auth/authclient.js');
|
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | 1 | // Copyright 2012-2016, Google, Inc.
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
'use strict';
/**
* This code has been moved to the google-auth-library repo, at
* https://github.com/google/google-auth-library-nodejs.
*
* Please update your references to point to the google-auth-library implementation,
* rather than this file.
*/
module.exports = require('google-auth-library/lib/auth/computeclient.js');
|
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | 1 | // Copyright 2012-2016, Google, Inc.
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
'use strict';
/**
* This code has been moved to the google-auth-library repo, at
* https://github.com/google/google-auth-library-nodejs.
*
* Please update your references to point to the google-auth-library implementation,
* rather than this file.
*/
module.exports = require('google-auth-library/lib/auth/jwtclient.js');
|
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | 1 | // Copyright 2012-2016, Google, Inc.
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
'use strict';
/**
* This code has been moved to the google-auth-library repo, at
* https://github.com/google/google-auth-library-nodejs.
*
* Please update your references to point to the google-auth-library implementation,
* rather than this file.
*/
module.exports = require('google-auth-library/lib/auth/loginticket.js');
|
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | 1 | // Copyright 2012-2016, Google, Inc.
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
'use strict';
/**
* This code has been moved to the google-auth-library repo, at
* https://github.com/google/google-auth-library-nodejs.
*
* Please update your references to point to the google-auth-library implementation,
* rather than this file.
*/
module.exports = require('google-auth-library/lib/auth/oauth2client.js');
|
| File | Statements | Branches | Functions | Lines | |||||
|---|---|---|---|---|---|---|---|---|---|
| generate.js | 4.55% | (1 / 22) | 0% | (0 / 8) | 0% | (0 / 4) | 4.55% | (1 / 22) |
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 | 2 | /**
* Copyright 2014 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
'use strict';
var Generator = require('../lib/generator');
var rimraf = require('rimraf');
var path = require('path');
var debug = false;
var argv = require('minimist')(process.argv.slice(2));
// constructors
var gen = new Generator({ debug: debug, includePrivate: false });
var args = argv._;
if (args.length) {
args.forEach(function (url) {
gen.generateAPI(url, function (err) {
if (err) {
throw err;
}
console.log('Generated API for ' + url);
});
});
} else {
console.log('Removing old APIs...');
rimraf(path.join(__dirname, '..', 'apis'), function (err) {
if (err) {
throw err;
}
console.log('Generating APIs...');
gen.generateAllAPIs(function (err) {
if (err) {
throw err;
}
console.log('Finished generating APIs!');
});
});
}
|